goneo beendet die Unterstützung von PHP 5.3 im November 2018

Wenn Sie als Kunde von goneo noch im Sommer 2018 eine oder mehrere Websites mit PHP 5.3 betrieben haben, haben Sie mit hoher Wahrscheinlichkeit einige E-Mails von goneo erhalten, in denen die Abschaltung der Version 5.3 für den November 2018 angekündigt worden ist.
In diesem Artikel möchten wir noch einmal einige wesentliche Informationen zusammenstellen.
Mit diesem Schritt führt goneo auch eine neue Standardversion für PHP ein. Die Version 7.1 wird die Rolle von Version 5.6 einnehmen und in neu angelegten Webservern voreingestellt sein.
Auch Kunden, die aktuell PHP 5.6 verwenden, werden mit dem nächsten Sammelupdate in Kalenderwoche 47, 2018  die Version 7.1 erhalten. Sollte es Probleme mit der Website oder der Webanwendung geben, kann man auf PHP 5.6 umschalten.

Einbindung PHP 7.1 als Modul  und PHP 5.6 sowie PHP 7.2 via CGI

PHP 7.1 ist mit dem Novembertermin bei goneo als Modul in den Apache-Webserver eingebunden. Kunden von goneo-Webhostingprodukten können statt der Version 7.1 auch PHP 5.6 oder PHP 7.2 verwenden. Dabei gibt es technisch einen Unterschied, den man beachten muss, wenn es darum geht, bestimmte Parameter für die PHP-Version zu verändern.
Die Releases 5.6 und 7.2 werden über CGI (Common Gateway Interface) angesprochen. Daher ist die Handhabung etwas anders, als wenn PHP 7.1 eingesetzt ist für den Fall, dass  PHP-Konfigurationen individuell verändert werden sollen. Dabei handelt es sich z.B. um die Anpassung des Memory Limits oder die Änderung der maximalen Größe für eine hochzuladende Datei. Für PHP 7.1 ändert man die Parameter per htaccess-Direktive, bei den CGI-Varianten 5.6 und 7.2 mit der Datei php.ini.
 

Warum wird PHP 5.3 bei goneo ersetzt?

Betriebsssysteme, Serversoftware und Tools ändern sich. Sie entwickeln sich weiter, teilweise sehr rasant.
Dies gilt auch für Technologien, die man als ganz basal einschätzt, wie etwa PHP. Mittlerweile gilt der Entwicklungsstrang 7 als der aktuelle und wird von führenden Experten in- und außerhalb der PHP-Entwicklercommunity für den Einsatz empfohlen. Für PHP 7 sprechen unter anderem Effizienzgewinne bei der Ausführung von Skripten.
Im Web wird man nach und nach auf PHP 7 basierende Anwendungen antreffen. Dienstleister und Anbieter wie goneo stellen sich natürlich stets auf solche Entwicklungen ein.
PHP wird in der Version 5.3 seit längerer Zeit nicht mehr weiterentwickelt.
PHP 5.3 ist End of life und wird seit August 2014 nicht mehr weiterentwickelt
PHP 5.3, das Sie nach unseren Unterlagen produktiv einsetzen, wird seit 2014 nicht mehr weiterentwickelt. Von den Machern erhielt PHP 5.3 den Status „End of life“ und sollte daher nicht mehr produktiv verwendet werden. Bekannte und bislang unbekannte Fehler und Sicherheitslücken werden nicht mehr ausgemerzt.
Wir können und wollen uns als Webhostinganbieter diesem technologischen Fortschritt nicht verschließen und haben einen internen Fahrplan für die Integration neuer PHP-Version und Entfernung älterer Versionen, der natürlich an die offizielle PHP-Planung angelehnt ist.

Wie verfährt goneo mit älteren PHP-Versionen?

Gemäß des offiziellen PHP-Fahrplans (der Roadmap) möchten wir im November 2018 die Version PHP 5.3 endgültig aus dem Angebot entfernen.
Aktuell werden neue Pakete für Neukunden mit PHP 7.1 als Standardversion ausgeliefert, wobei PHP 5.6 und 7.2 per Auswahl zur Verfügung stehen.
PHP 5.3 steht als Auswahl für einige Kunden aus Kompatibilitätsgründen noch zur Verfügung. Dies geschieht, damit die betroffenen Kunden Zeit haben, auf die Änderung zu reagieren.
Mit dem Novembertermin wird die Version 5.3 entfernt. PHP 5.6 wird bis auf weiteres noch zur Verfügung stehen. Sollten Anpassungen oder Entwicklungsarbeiten fällig werden, empfehlen wir, eine Kompatibilität mit PHP 7.2 anzustreben, um möglichst zukunftssicher zu agieren.

Was muss  ich tun, wenn ich PHP 5.3 einsetze?

Bitte überprüfen Sie Skripte, Anwendungen und Erweiterungen auf Kompatibilität mit aktuellen PHP-Versionen.
Für den Fall, dass Sie noch Skripte oder Anwendungen produktiv einsetzen, die zwingend PHP 5.3 voraussetzen, ist daher Handlungsbedarf gegeben: Wir bitten Sie, umgehend zu prüfen, ob diese Anwendungen bzw. Skripte nicht doch unter PHP 5.6 lauffähig sind oder ob es für die Anwendung nicht eine neue Version gibt. Bei Open-Source-Anwendungen ist dies oft der Fall, auch wenn die ursprünglichen Entwickler das Projekt aufgegeben haben. Oftmals finden sich in offenen Code-Repositories aktualisierte Versionen oder zumindest Hacks, die man verwenden kann, um die Anwendung unter einer aktuelleren PHP-Version fehlerfrei laufen zu lassen. Dies ist allerdings nicht die beste Lösung.
Bitte überprüfen Sie eingesetzte Skripte oder Anwendungen dahingehend, ob es nicht neue Versionen gibt oder ob Sie mit vertretbarem Aufwand einige Änderungen vornehmen können.
Schalten Sie nach Prüfung und Änderung bitte auf die neue, aktuelle PHP-Version um.

goneo Kundencenter Webserver Screenshot
Die Prüfung der verwendeten PHP-Versionen können Sie im goneo-Kundencenter vornehmen. Loggen Sie sich mit der Kundennummer und dem Passwort ein und nutzen Sie den Menüpunkt „Webserver“

Auswahl der PHP Version pro Webserver im goneo-Kundencenter Screenshot
Mit Klick auf das „Bearbeitungssymbol (ein stilisierter Schraubenschlüssel) gelangen Sie auf die Seite im Kundencenter, auf der Sie zum ausgewählten Webservereintrag die PHP-Versionen auswählen können.

Sollte es sich in Ihrem Fall um ältere, nicht mehr verwendete Anwendungen handeln, die Sie seinerzeit vielleicht nur testweise aufgesetzt haben und nicht benötigen, löschen Sie diese Anwendung am besten und stellen Sie die PHP-Version für diesen Webserver auf 7.1 oder höher um.
Wenn Sie noch Skripte oder Anwendungen produktiv einsetzen, die zwingend PHP 5.3 voraussetzen und mit höheren PHP-Versionen nicht lauffähig sind, ist jetzt Handlungsbedarf gegeben. Dafür sind noch einige Tage Zeit.
Bitte überprüfen Sie eingesetzte Skripte oder Anwendungen, auf Kompatibilität mit höheren PHP-Versionen (mindestens 5.6). Sollte keine Kompatibilität gegeben sein, stellen Sie diese nun bitte her. Die dazu erforderlichen Maßnahmen hängen von der Anwendung bzw. vom Code ab.
Eventuell sind Umprogrammierungsarbeiten erforderlich, unter Umständen genügt ein Update auf eine neue Version der Anwendung. Wir wissen, dass dies Aufwand nach sich zieht, der im Regelfall jedoch als niedriger zu bemessen ist als ein permanentes Cybersicherheitsrisiko.

Welches Risiko würde bestehen, wenn PHP 5.3 weiter in Betrieb bleibt?

Wir wissen, dass mit der Entwicklung einer neuen Website oder E-Commerce-Anwendung (Shop) Aufwand, Zeit und Kosten verbunden waren und man als Betreiber bestrebt ist, diese Investition möglichst lange auszuwerten. Dennoch sollte im Sinne einer Risikobewertung auch die Gefahr betrachtet werden, die durch nicht geschlossene Sicherheitslücken gegeben ist.
Gerade auch im Hinblick auf verschärfte Datenschutz- und Haftungsregelungen (DSGVO) muss eine ständige Bewertung erfolgen. Wir halten es für geboten, die Version 5.3 zu entfernen, nachdem wir unter Gesichtspunkten eines Investitionsschutzes für unsere Kunden diese Version noch zur Verfügung gestellt hatten.

Die Anwendung lässt sich nicht aktualisieren – was kann ich tun?

Möglicherweise finden Sie keine neueren Versionen der Anwendung, die Sie einsetzen. In diesem Fall müssen Sie abwägen, ob es sich lohnt, den PHP-Code durch einen Experten manuell bearbeiten zu lassen oder die Site komplett neu aufzusetzen, möglicherweise mit einer anderen Anwendung, die mehr Zukunftsfähigkeit verspricht.
Eine pauschale Aussage kann man leider nicht treffen. Zudem kann der Aufwand, nicht mehr weiterentwickelte Anwendungen kompatibel zu PHP 5.6 oder 7.1 zu machen, erheblich sein. Sie müssten einen PHP-Entwickler (Programmierer) mit den Aufgaben betrauen, was Kosten nach sich ziehen wird. Rechnen Sie mit 100 bis 300 Euro pro Stunde.
Unter Umständen ist es sinnvoller, die ganze Website mit einer anderen Anwendung zu realisieren. Welche Anwendung das sein kann, hängt von Typus der Site ab (Onlineshop, Blog, Portfolio-Seite…).
Die unter goneo-clickStart gelisteten Open-Source-Anwendungen halten wir für entsprechend zukunftsfähig, da hinter diesen in der Regel eine große und aktive Entwicklergemeinde steht, viele Installationen ausgeführt worden sind und die Software auf einem aktuellen Stand gehalten wird.
Hier finden Sie die goneo-clickStart-Anwendungen:
https://goneo.de/clickstart.html

Warum sind die PHP-Versionen auf unterschiedliche Art und Weise eingebunden?

Wir möchten verschiedene Varianten von PHP anbieten, wobei allerdings nur eine als Modul  in den Apache-Webserver eingebunden werden kann. Die Entscheidung für die Version, die als Modul eingebunden wird, fiel auf PHP 7.1 aufgrund der erkennbaren Releasepolitik von PHP.org.
Ob die jeweilige PHP-Version als Modul oder via CGI angesprochen wird, für die meisten Anwendungen nicht entscheidend. Es wird von Geschwindigkeitsvorteilen berichtet, wenn PHP als Modul eingebunden wird. Dies lässt sich allerdings nicht pauschal für alle möglichen Konstellationen und Anwendungen bzw. Skripte so bestätigen.

Welche PHP-Version sollte ich verwenden?

Wir raten eher dazu, die aktuellste Version, die wir als goneo anbieten, zu verwenden, da in diesen Versionen die Weiterentwicklung der PHP-Linie angelegt ist. PHP hat die Eigenschaft, dass neue Funktionen und Befehle hinzukommen während andere zunächst als „deprecated“ gekennzeichnet werden, aber noch funktionieren und mit einer der folgenden Versionen dann entfernt werden. Das Skript, das eine aufgegebene Funktion verwendet, wird eine Fehlermeldung ausgeben und nicht wie erwartet funktionieren.
Wenn die konkrete Anwendung allerdings nicht mit der neusten Version funktioniert, muss man eine frühere Version verwenden, die noch kompatibel ist. Dies ist so lange nötig bis der Hersteller der Software ein Update veröffentlicht, das die neueste PHP-Version unterstützt.

Warum bietet goneo überhaupt verschiedenen PHP-Versionen an?

goneo möchte, dass möglichst viele fertige Kunden-Anwendungen auf den Servern ohne Probleme funktionieren. Einerseits müssen wir der Entwicklung der Technologie Rechnung tragen, andererseits aber auch die Kompatibilitätsanforderungen der von Kunden verwendeten Software beachten.
Oft sind existierende Anwendungen mit neuen PHP-Versionen nicht kompatibel und Updates stehen (noch) nicht zur Verfügung.
Grundsätzlich ist goneo eher konservativ hinsichtlich der PHP-Versionen. goneo verwendet nur bewährte und stabile Versionen, keine als experimentell bezeichneten Releases. goneo behält auch ältere PHP-Versionen im Angebot, solange dies sicherheitstechnisch vertretbar erscheint.

Zusammenfassung

Ab Anfang November 2018 wird PHP 5.3 bei goneo nicht mehr angeboten. Grund ist, dass PHP 5.3 nicht mehr weiterentwickelt wird und dadurch Sicherheitsrisiken entstehen. Bitte stellen Sie sicher, dass Ihre Websites unter PHP 5.6 oder höher funktionieren.
PHP 5.6 wird auch ab November 2018 bis auf weiteres zur Verfügung stehen. Sollten umfangreiche Anpassungen oder Entwicklungsarbeiten fällig werden, empfehlen wir im Sinne eines optimalen Investitionsschutzes, Kompatibilität mit PHP 7.2 anzustreben.

Weiterführende Informationen

Artikel zu End of Live bei Heise Online
https://www.heise.de/developer/meldung/End-of-Life-fuer-PHP-5-3-2293804.html
Auf der offiziellen PHP-Seite gibt es eine ausführliche Dokumentation über die Migrationen, d.h. Übergänge einer 5.x-Version zur nächsthöheren. Damit kann man nachverfolgen, welche Änderungen diese Migrationen mit sich brachten und welche Schritte empfohlen worden sind. Zudem sind neue und weggefallene sowie „missbilligte“ (engl.: „deprecated“) PHP-Funktionen aufgelistet und erklärt.
Artikel zum Übergang von PHP 5.3 auf 5.4
http://php.net/manual/de/migration54.php
Artikel zum Übergang von PHP 5.4 auf 5.5 (engl.)
http://php.net/manual/de/migration55.php
Artikel zum Übergang von PHP 5.5 auf 5.6
http://php.net/manual/de/migration56.php
Die Roadmap der PHP-Versionen
Die Liste der unterstützen Versionen:
http://php.net/supported-versions.php