Reorganization and upgrade of www-linux

www-linux.gsi.de, the host that serves the WebDocs of the LinuxFarm users is also its last dinosaur. An upgrade of hardware as well as software is long overdue.

New service policy

To modernize this service to meet the requirements of today some changes of the service architecture were required - or have become possible as improvements to the service.

New server name
The WebDocs will now be served from web-docs.gsi.de. The old links to www-linux will still point to the right location by means of URL redirection.

New local path
The web-docs are now located beneath a different path (/var/www/webdocs.gsi.de/ instead of /www). File include statements, e.g. in scripts or .htaccess files must be changed and should use relative paths or the generic /u/account/web-docs/ wherever possible.

No remote file systems
No remote FileSystems will be mounted on the new server due to stability concerns. The only exception is /usr/local.
This means that all links to directories outside of ~/web-docs will not work anymore.

Quotas
To avoid performance impacts due to a high fill level of the web-docs file system, quotas have been introduced along the lines of the home directory quotas.

CGI and PHP scripts run under the owners userid
On the old www-linux all PHP and CGI scripts were executed with the privileges of the web server account. On the new server all scripts will run with the privileges of the WebDocs owner. It is no longer required to have world-writable directories to allow scripts to write data into - on the contrary: the new server will not execute scripts in directories without write permissions to anybody apart from the owner.

PHP upgrade
The PHP version changes from the ancient version 4.2 to the more up to date version 5.2. Many new features are available while others are deprecated or already vanished, e. g.
  • register_globals is disabled on the new server.
    Many environment variables are now inside dedicated arrays, e.g. $SERVER_NAME is nowadays $_SERVER["SERVER_NAME"]. CGI variables are $_REQUEST["var"] instead of simply $var.
  • URL-based includes disabled - i.e. include|require|include_once|require_once("http://...") - have been disabled for security reasons.

Automatic migration and regression testing

We did thorough regression testing and provide automatic migrations wherever possible. Modified files will be backed up as filename.webdocs_upgrade.

Anyhow the regression tests cannot cover all areas, e.g. password protected pages, pages that haven't been accessed for a longer period a.s.o. Please also check your web-docs yourself.
Topic revision: r9 - 2012-06-15, ChristopherHuhn