Webcluster: Update auf PHP 5.5

Für die PHP-Installation des Webclusters steht am 04.08.2014 ein Versionssprung an – wir lassen eine Minor-Version aus und gehen direkt von 5.3 nach 5.5.

Für aktuell gehaltene Content-Management-Systeme, Wikis oder Blogsysteme sollte das kein Problem darstellen. Bei älteren Systemen oder Eigenentwicklungen lohnt sich – auch derzeit schon – ein Blick in die Logdateien. Diese können Sie im Webmasterportal einsehen. Sollten dort Hinweise auf Funktionen auftauchen, die „deprecated“ sind, also in zukünftigen PHP-Versionen nicht mehr unterstützt werden, können Sie in der Dokumentation nachlesen, wie Sie Ihren Code am besten umbauen.

Funktionen, die derzeit schon veraltet sind, finden sich hier:
http://www.php.net/manual/de/migration53.deprecated.php
Für PHP 5.4 und 5.5 entsprechend:
http://www.php.net/manual/de/migration54.deprecated.php
http://www.php.net/manual/de/migration55.deprecated.php

Betroffen ist auch das UnivIS-Skript des Webbaukastens: Es muss auf die Version vom 26.06.2014 (oder später) aktualisiert werden. Die aktuelle Version finden Sie unter http://vorlagen.uni-erlangen.de/downloads/anwendungen.php.

Damit es bei der Umstellung zu möglichst wenig Problemen kommt, stellen wir vorab die Möglichkeit zur Verfügung, den eigenen Webauftritt mit der neuen Version zu testen.

Bearbeiten Sie dazu die Hosts-Datei Ihres Client-Rechners und tragen dort als Server-IP die 131.188.16.203 ein. In etwa:
131.188.16.203 www.beispiel.fakultaet.uni-erlangen.de
Dieses Testsystem ist aus dem Netz der Universität sowie per VPN erreichbar.

Auf unseren Systemen ist die Fehlerbehandlung von PHP folgendermaßen konfiguriert:
error_reporting = E_ALL | E_STRICT | E_DEPRECATED & ~E_NOTICE
display_errors = Off
log_errors = On

Geloggt werden also alle Fehlermeldungen, explizit mit Hinweisen zu Coding-Standards und veralteten Funktionen. Ausgenommen sind Meldungen, die lediglich Hinweischarakter haben. Fehlermeldungen werden nur in die Logdatei geschrieben und nicht mit dem Seitenquellcode ausgegeben.

Im eigenen Webauftritt können Sie die Fehleranzeige auf zwei Arten verändern:

  • Mittels .htaccess-Datei lässt sich die Fehlerausgabe per php_value/php_flag setzen. Wenn man diese Definitionen noch in einen IfDefine-Block setzt, dann kann man das Logverhalten des Testsystems separat vom Produktivsystem konfigurieren:

    <IfDefine infodev>
    php_value error_reporting 2147483647
    php_flag display_errors 1
    </IfDefine>
  • Direkt in den Skripten kann man die Fehlerausgabe auch beeinflussen:

    error_reporting(E_ALL | E_STRICT);
    ini_set("display_errors", 1);

    Auch hier kann man die Einstellungen ausschließlich für das Testsystem ändern:

    if ($_SERVER['SERVERFARM'] === 'infodev')
    {
    error_reporting(E_ALL | E_STRICT);
    ini_set("display_errors", 1);
    }

Unsere Webserver werden am 04.08.2014 auf PHP 5.5 umgestellt. Sollten Sie beim Test Ihres Webauftritts Probleme feststellen, von denen absehbar ist, dass Sie diese nicht bis zu diesem Datum beheben können, melden Sie sich bitte bei webmaster@rrze.fau.de.