Abschaltung alter PHP Versionen - was bedeutet das für die Kompatibilität?
Die Skriptsprache PHP: Hypertext Preprocessor (PHP) wurde speziell für die Erzeugung und die komfortable Programmierung dynamischer Webseiten entwickelt und gilt spätestens seit der Jahrtausendwende als der dominierende Standard für Webanwendungen. Wie alle anderen Sprachen unterliegt es einer permanenten Weiterentwicklung, mit der die verantwortlichen Entwickler potenzielle oder bereits entdeckte Sicherheitslücken beseitigen, neue Funktionen einführen und die Effizienz und Performance steigern. Zu den konkreten Auswirkungen gehört, dass eine mittlerweile veraltete PHP Version nach einer bestimmten Zeitspanne abgeschaltet wird, um die Ressourcen auf die Betreuung aktueller Varianten und die Neuentwicklung konzentrieren zu können. Für den Anwender bedeutet dies wiederum, dass er auf die Kompatibilität seiner Software mit der neuen Version achten muss, um Probleme bis zu einem vollständigen Ausfall einer Webseite zu vermeiden.
Wie verläuft die Entwicklung und die Ausbreitung von PHP?
Im Vergleich mit anderen Programmiersprachen zeichnet sich PHP durch einen relativ kurzen Entwicklungszyklus aus, der auf ausgewählte Versionen mit einem langfristigen Long Time Support (LTS) verzichtet. Stattdessen unterstützen die Entwickler offiziell jeden Zweig (Branch) nach seiner Veröffentlichung für zwei Jahre, wobei diese Frist ausschließlich für die jeweils vorhergehende PHP Version innerhalb eines Unterzweigs gilt. Anschließend veröffentlicht das Team noch weitere Updates für ein zusätzliches Jahr, falls sich innerhalb dieser Zeit sicherheitskritische Lücken zeigen, die eine rasche Reaktion erfordern. Eine exakte Aufstellung über das End of Life - die Einstellung jedes Supports - finden Interessierte auf der offiziellen Webseite von PHP.
Die Kunden eines Webhostings sind bei der Wahl ihrer PHP Version ohnehin von ihrem Anbieter abhängig, weil dieser sie global für alle seine Kunden umstellt. Viele Webhoster bieten dabei eine Auswahl zwischen den letzten zwei oder drei Versionen und informieren mit einigen Wochen Vorbereitung, bevor er die älteste abschaltet. Das Gleiche gilt für einen Managed Server, wobei die Nutzer in diesem Fall oft Präferenzen äußern und Prioritäten festlegen können. Bei einem virtuellen oder dedizierten Server sind hingegen die User selbst für eine Umstellung verantwortlich, die allerdings in der Regel unter Linux mit der Aktualisierung des Betriebssystems weitgehend automatisch erfolgt. Zusätzlich kann durch PHP Hardening für mehr Sicherheit der PHP Einstellungen gesorgt werden.
Was ist bei der Kompatibilität zwischen unterschiedlichen PHP Versionen zu beachten?
Bei der Aktualisierung eines Unterzweigs - also etwa von X.0 auf X.1 - finden in den meisten Fällen lediglich geringfügige Änderungen statt, die keine direkten Auswirkungen auf einen Programmcode zeigen. Anders sieht es bei größeren Versionssprüngen etwa von 7.X auf PHP 8.0 aus, da hier redundante, unsichere und überflüssige Funktionen entfernt und in ihrer Arbeitsweise und Syntax teilweise verändert werden. Probleme, die durch eine fehlende Kompatibilität zwischen beiden entstehen, sind deshalb zwar selten, treten aber speziell bei älteren und nicht gepflegten Versionen von Content Management Systemen (CMS) wie WordPress, TYPO3 und Joomla oder E-Commerce wie Shopware auf. Speziell im letzteren Fall ist es dringend zu empfehlen, diese so schnell wie möglich zu aktualisieren, um Sicherheitslücken und andere Gefahren ausschließen zu können.
Wie lässt sich die Kompatibilität zu einer neuen PHP Version überprüfen?
In der Theorie ließe sich eine Kompatibilität zwischen einer alten und einer neuen PHP Version selbstverständlich durch eine umfassende Überprüfung des Codes mit den in einem Changelog durchgeführten Änderungen feststellen. Da ein CMS wie Joomla, WordPress, Shopware oder TYPO3 allerdings aus Hunderten Skripten und teilweise mehr als 100.000 Zeilen Code besteht, erweist sich ein solches Vorgehen allerdings als ebenso zeitaufwendig wie ineffizient. Praktisch besteht die bevorzugte Methode deshalb aus einer geeigneten Testumgebung, die in ihrer Installation dem produktiven System so weit wie möglich entspricht, jedoch auf sicherheits- und datenkritische Details wie etwa persönliche Kundeninformationen verzichtet.
Bei kommerziell genutzten Webseiten empfiehlt es sich deshalb generell, eine identische Installation etwa durch Cloning des Basissystems auf einem einfachen virtuellen Server zu betreiben. An diesem lassen sich Maßnahmen wie eine Aktualisierung durchführen und auf eventuelle Probleme untersuchen, ohne den produktiven Betrieb einer Webseite zu gefährden. Ergeben sich dabei Schwierigkeiten, können diese innerhalb eines ausreichenden Zeitrahmens ohne Ausfall der Webseite untersucht und gelöst werden. Der eigene PHP-Editor hilft hier ggf. bei der Findung von Problemen.
Foto: Dok Sev auf Pixabay
Schreibe einen Kommentar
- PHP
Tags zu diesem Artikel
Weitere Webhoster
Weitere interessante Artikel
Symfony vs. Laravel - welches ist das bessere PHP Framework?
Symfony vs. Laravel - Wir zeigen euch was das bessere PHP Framework für euer nächstes Projekt ist.
Was ist ein LAMP Server? Eine Übersicht
Ein LAMP Server ist notwendig für dynamische Webseiten. Wir zeigen euch die Vorteile des Stacks.
Im Jahr 2006 riefen wir hosttest ins Leben, um den Webhosting Markt im DACH-Raum transparenter zu machen. Mit derzeit über 400 Webhostern und über 10.000 Angeboten bieten wir dir die beste Grundlage, den für dich passenden Anbieter für Hosting-Leistungen zu finden.
Seit 2015 küren wir zudem alljährlich unsere Webhoster des Jahres und würden uns in Zukunft auch über deine Stimme freuen.
Mehr über uns...