In dieser Woche (19.11. bis 23.11.2018, Kalenderwoche 47) bekommen viele Server aktualisierte Software auf Betriebssystemebene. Es handelt sich um viele neue Unterversionen einzelner Module, Programmpakete und Patches, die von diversen Herstellern und Herausgebern zur Verfügung gestellt werden. In diesem Zuge ersetzt nun PHP 7.1 die Version PHP 5.6 als Standardversion bei und alle Webspaces, deren PHP-Version bislang PHP 5.6 war, wurden mit dem Update auf PHP 7.1 umgestellt. Eine Umschaltung auf PHP 7.2 oder PHP 5.6 ist im goneo-Kundencenter möglich.
In den meisten Fällen wird man als Webseitenbetreiber von der Umstellung nichts spüren. Es kann allerdings einige Ausnahmen geben. Dazu einige Hintergrundinformationen in diesem Beitrag.
Ziel dieser Update-Aktion ist, Sicherheit, Stabilität und Performance weiter zu optimieren. Technisch bedingt wird es jeweils pro Server eine Phase geben, in der die auf diesem Server gelagerten Dateien nicht zugänglich sind. Der Server ist für etwa zehn Minuten aus dem Internet nicht erreichbar. Grund: Er wurde neu gestartet und die Änderungen werden angewendet.
Gesammelte Updates eingespielt
Es handelt sich um eine ganze Sammlung neuer Modul- und Programmversionen, damit möglichst wenige Nichterreichbarkeitsphasen entstehen.
Mit diesem Update führt goneo keine neue PHP-Version ein, allerdings ändert sich die Anordnung der Versionen: Bisher galt bei goneo die Version PHP 5.6 als Standardversion, die in neu einzurichtenden Webspaces voreingestellt ist. Seit dieser Woche übernimmt PHP 7.1 diese Rolle.
PHP 7.1 löst bei goneo PHP 5.6 als Standardversion ab
Zum technischen Hintergrund: Bei goneo wird eine PHP-Version, die goneo als Standard definiert (bisher PHP 5.6), als Modul in den Webserver (gemeint ist die Softwarekomponente Apache) eingebunden. Andere Versionen (bisher PHP 7.1, PHP 7.2 und zum Teil auch noch PHP 5.3) werden über CGI (Common Gateway Interface) angesprochen.
Für die Interpretation bzw. die Ausführung des PHP-Codes, also der in PHP verfassten Skripte ist die Art der technischen Einbindung der PHP-Version fast unerheblich.
Eine Ausnahme ist die individuelle Konfiguration eigener Parameter, etwa für die maximal erlaubte Skriptlaufzeit, die größtmögliche Uploaddateigröße oder den zugeordneten PHP-Arbeitsspeicher. Diese Parameter lassen sich – natürlich innerhalb gewisser Grenzen – verändern.
Unterschiedliche Handhabung von eigenen PHP-Konfigurationen
Handelt es sich um die Standardversion PHP 7.1 verändert man diese Parameter mit Direktiven in der Datei „.htaccess“. Handelt es sich um eine Version von PHP, die über CGI angesprochen wird, verwendet man Einträge in der Datei „user.ini“, um die Werte zu setzen.
Diese Tabelle zeigt, welche PHP-Versionen bei goneo mit welchem Mittel angepasst werden können:
bisher | ab Woche 47/2018 |
Konfiguration anpassen via | |
Standard | PHP 5.6 | PHP 7.1 | htaccess-Datei |
Erste Option | PHP 7.1 | PHP 5.6 | user.ini-Datei |
Zweite Option | PHP 7.2 | PHP 7.2 | user.ini-Datei |
In diesen Artikeln in der goneo-Hilfe ist ausführlicher dargestellt, wie die PHP-Parameter im Einzelnen verändert werden können:
https://wiki.goneo.de/eigene_userini_cgi
https://wiki.goneo.de/htaccess_php_modul
Kompatibilität der Anwendungen, Konfigurationsdateien und usergenerierten Skripte mit PHP 7
Im Zuge dieser Änderung kann es sein, dass dadurch auf einem Webspace nun automatisch die PHP-Version 7.1 verwendet wird, obwohl vorher PHP 5.6 voreingestellt war.
Ergänzend sind auch Informationen auf der Seite „goneo beendet die Unterstützung von PHP 5.3 im November 2018“ hilfreich.
Wenn auf dem Webspace eine moderne Version typischer Anwendungen wie Joomla, WordPress, Drupal installiert ist, wird es in den allermeisten Fällen keine sichtbaren Unterschiede oder Auffälligkeiten geben. Es gibt aber Ausnahmen.
In einigen Fällen macht es sich bemerkbar, wenn die Konfiguration für PHP mit der Datei „user.ini“ oder „.haccess“ angepasst wurde. Dies tritt auf, wenn die bisher verwendete Version PHP 7.1 war und nun weiter verwendet wird. Dadurch, dass PHP 7.1 nun bei goneo Standardversion ist und als Modul in Apache eingebunden ist, müsste eine Veränderung der PHP-Konfiguration nun über die „.htaccess“-Datei erfolgen während man bis dato diese Änderung per „user.ini“-Datei bewirkt hatte. Hier muss man nun eine Änderung vornehmen.
Probleme können auch dann entstehen, falls die Anwendung auf dem Webspace nicht unter PHP 7.1 oder 7.2 lauffähig sind. Besonders dann wenn bisher PHP 5.6 verwendet wurde, hat sich dies nicht bemerkbar gemacht. Nun wurde im Zuge des Update die Einstellung von PHP 5.6 auf PHP 7.1 bewirkt. Das heißt, alle User, die bis dato PHP 5.6 eingestellt hatten, finden nun die Version 5.6 vor.
Lösung von Problemen nach Umschaltung auf PHP 7.1
Falls unter PHP 7.1 nun Probleme auftreten, ist die wahrscheinlichste und kurzfristig einfachste Lösung, im goneo-Kundencenter wieder auf die Version PHP 5.6 zurückzuschalten. Nach etwa 15 Minuten wird die Einstellung auf dem Server wirksam und die Skripte sollten wieder laufen, wenn sie bisher unter PHP 5.6 funktionierten. Falls nicht, könnte die user.ini-Datei beziehungsweise „.htaccess“-Datei ein Problem verursachen. Wie sich so ein Problem im Browser auswirkt, hängt von den Gegebenheiten ab. Oft bleibt der Screen weiß oder es wird eine Fehlermeldung wie „500“ ausgegeben. Möglicherweise generiert das Skript auch eine PHP-Fehlermeldung.
In diesem Fall ist es ratsam, die Fehlerprotokolle einzusehen, die in den meisten Webhosting-Paketen im goneo-Kundencenter zugänglich sind. Man findet unter „Experten Funktionen“ den Menüpunkt „> Error Log Webserver“. Um die neu protokollierten Fälle aufzurufen, muss man auf den Button „Aktualisieren“ klicken.
Die Fehlermeldungen geben in vielen Fällen direkten Aufschluss über die Ursache des Problems. Meist lassen sich zumindest die Datei und der Aufruf identifizieren, die den Fehler ausgelöst haben.
Alte Software
Handelt es sich um Standardsoftware wie WordPress, Joomla, Drupal etc. empfiehlt es sich, die neusten Versionen zu verwenden. Es gibt allerdings Fälle, in denen vom ursprünglichen Herausgeber keine neuen Versionen zur Verfügung gestellt werden, etwa weil die Software nicht mehr weiterentwickelt wird. Hier empfiehlt es sich zu prüfen, ob der Einsatz dieser Anwendungen noch länger zu verantworten ist.
In Zeiten, in denen die Gesellschaft mehr Augenmerk auf Cybersicherheit und Datenschutz legt (Stichworte: DSGVO, ePrivacy), steigt auch die Verantwortung des Webseitenbetreibers. Dem sollten Webseitenbetreiber Rechnung tragen, indem das Machbare und Mögliche umgesetzt wird. Mit diesem Ansatz ist der Einsatz veralteter Software nur schlecht vereinbar.
PHP 5.6 ab Anfang 2018 „End of Life“
Bei der Überlegung, welche PHP-Version künftig geeignet ist, sollten Webseitenbetreiber berücksichtigen, dass PHP 5.6 der letzte Release unter dem Entwicklungszweig 5 sein wird. Planmäßig endet die Unterstützung der Herausgeber von PHP mit Beginn des neuen Jahres. Es ist also absehbar, dass auch goneo in wenigen Wochen bis Monaten diese Version aus dem Angebot nehmen muss. Ein genauer Termin steht noch nicht fest, es ist aber im ersten Quartal 2019 damit zu rechnen.