Showing results for 
Search instead for 
Did you mean: 

CGI Upgrade FAQ

Community Gaffer
Community Gaffer
Posts: 16,916
Thanks: 5,021
Fixes: 316
Registered: ‎04-04-2007

CGI Upgrade FAQ

Following the announcement here and taken from the Community Library article here.
[quote author="Community Support Library"]1) Why are you updating the CGI platform?
As regular forum readers will know we have been working for a while on a new and upgraded platform designed to replace our old CGI service. However, some security aspects of the older platform have recently been the cause of some concern to us. Because of this we have decided to bring forward the move to the new platform and rollout the upgrade more rapidly than we had originally planned.
In August last year we removed SSH access to the old CGI service and began to build our new replacement. We had intended to run in the old and new platforms in parallel, unfortunately due to the security concerns this is no longer going to be possible.
2) What are the differences between the new CGI platform, and the old platform?
The new platform runs PHP5 as opposed to PHP4. The new platform has been built with security in mind and makes use of one of Apache's features known as 'SuEXEC'. We have tried to keep most other things the same to avoid any unnecessary disruption to your service.
3) What do these differences mean to my website?
Most customers using our CGI service will not notice any change. All the settings and local addresses should remain the same for your scripts and uploads. Some CGI scripts that make use of legacy functions of PHP4 might not work under PHP5. You can find out more information about the backwards compatibility of PHP5 here.
4) Why are you allowing Global Variables in PHP5?
To make the move to PHP5 a smooth one we are looking to support 'global variables' (register_globals) for the first 3 months after the upgrade. This will minimise the potential for compatibility issues during the transition. It's highly probably that we will need to switch global variables off at some point so we recommend that you spend some time over the next three months making sure that your scripts are fully PHP5 compatible.
5) What help can I expect from Plusnet?
We cannot provide customers with individual support on website design and CGI-scripting, but obviously we want to help you if you have difficulties with the transition. If you do need support then please post over on our Community Support forums in the first instance.
6) What file permissions should I use on the new platform?
We recommend you permission your files as follows. Thanks to 'Gabe' on the community forums for his helpful post regarding this topic here.

  • Folders: We recommend setting your folder permissions to 710 (drwx--x---). If you need to use more relaxed permissioning then we suggest setting things no higher than 750 (drwxr-x---). Some packages, like Wordpress, may encourage you to set folder permissions to 777, but we advise against this. If 710 is insufficient, try 750 but no higher.

  • Scripts: We recommend setting script permissions to 700 (-rwx------) and no higher.

  • Static web content: e.g. Apache files like .htaccess and .htpassword and other static web content like html, css and javascript files should be left at the default value of 640 (-rw-r-----).

  • Other files: Files which are only read from and written to by scripts, but not served to browsers can be set to 600 (-rw-------). This includes log files, ini files and certificate files.

NB: The new CGI servers use SuEXEC which checks that neither scripts nor folders writable by anyone other than user. If 'group' or 'other' are writable then you're likely to encounter problems.
7) I'm getting a 403 Forbidden error
Check the permissioning of your files. Don't forget to check your .htaccess files too, on the new platform these files must be readable by the group. Setting .htaccess permissions 640 (-rw-r-----) should be sufficient.
Cool I'm getting a server 500 error when trying to browse to my web site.
The most common reason for this error is where customers are using .htaccess directives that are not compatible with the new servers.  The new platform allows .htaccess to override only: FileInfo, AuthConfig and Limit directive types. This is much more secure but may cause some formerly-allowed directives to fail e.g. IndexIgnore must be removed. For more information about this, please refer to the forum post here. If you're receiving this error then you should also check that your permissions adhere to the limitations detailed above.
9) I'm getting a 'Premature end of script headers: index.php' error, what does it mean?
Check that your file permissions and any .htaccess files adhere to the limitations set out above. You should also check that you're using compatible environment variables. See here for more information.
10) I can't connect to the FTP server
Please be mindful that you will need to be connected to the Plusnet network before you'll be able to FTP to the CGI servers. You will not be able to do this from another ISP's network. If you can connect to the FTP servers but they are not accepting your username or password then please raise a support ticket on your account so that we can reset your password.
11) My webforms have stopped working
If you have a webform that is reliant on the POST method then you may find that it has stopped working. This is due to way that certain URLs are rewritten on our filesystem and causes problems where the $PHP_SELF or $_SERVER['PHP_SELF'] variables are in use. You'll find more detail about this here. We're hoping to fix this however in thge meantime you can use $_SERVER['SCRIPT_URL'] in place of $PHP_SELF or $_SERVER['PHP_SELF'], which should resolve the issue.

We believe that this particular issue might now be fixed.

12) I want to make sure my website is going to work when 'register_globals' is switched off. How can I test this?
You can do this via the use of a php.ini file. For further details please see the forum post here (thanks again to 'Gabe' for this contribution).
13 I have another problem
If you have a problem that isn't addressed by this FAQ then please head over to our Community Site Forums where you'll be able to seek advice from support staff and other members of the Community. If your problem is unique to your account then you may be asked to raise a ticket on your account by visiting here and clicking on Webspace & CGI > CGI > I have a problem after the upgrade to PHP5 .
[Moderator's note by Thomas (Be3G): smileys disabled as SMF was incorrectly interpreting some text as one.]

Bob Pullen
Plusnet Product Team
If I've been helpful then please give thanks ⤵