Zugegeben, das Upgrade auf die PHP 8.x Schiene hat diesmal etwas länger gedauert als vorangegangene Updates, aber bis zuletzt gab es kleinere „Sorgenkinder“ wie das genutzte Status Page Script Cachet. Letzteres wird aktuell nicht mehr aktiv weiterentwickelt, so schnell wird eine PHP 8 kompatible Version also nicht auftauchen. Dennoch sollte das natürlich nicht vom Umstieg abhalten – und so habe ich das Status Page Script erst einmal durch eine relativ statische Seite ersetzt 🙂
Der übrige Wechsel ging ausgesprochen problemlos vonstatten. Gängige Scripts wie WordPress, phpBB oder Nextcloud kommen mit PHP 8.1 zurecht, nur die eingesetzten Plugins können zur Stolperfalle werden. Hier hatte ich allerdings Glück, bis auf ein kleines Kompatibilitätsproblem bei einem phpBB Plugin scheinen die übrigen WordPress und phpBB Plugins mit der neuen Version zurecht zu kommen.
Und so beschränkte sich das Upgrade auf die Zusammenstellung der notwendigen configure Parameter (und ein Cleanup alter 😀 ) sowie einer kleinen Anpassung der Apache Konfiguration.
Damit hat das Upgrade auf die neuste Version doch noch just in time vor dem End of Life der PHP 7.4 Reihe geklappt 🙂
Schlagwort-Archive: Apache
Upgrade auf Debian Stretch 9.0 geglückt
Im zweiten Anlauf ist mir in der vergangenen Nacht das Upgrade des Servers auf Debian Stretch geglückt. Damit ist etwas mehr als eine Woche nach dem Release von Debian Stretch die Hauptarbeit bereits abgeschlossen. Grundsätzlich habe ich direkte Upgrades auf die Nachfolgeversion von Debian bislang gemieden und stets auf eine (meistens deutlich spätere) Neuinstallation gesetzt. Auch diesmal stand dieser Weg bei mir ganz oben auf der Liste, allerdings habe ich mich dann doch relativ schnell für das Upgrade umentschieden – auch nachdem erste Berichte von einem grundsätzlich relativ reibungslosen Prozess berichteten. Bei vergangenen Debian Upgrades sah das zum Teil noch anders aus.
Das eigentliche Systemupgrade lief bei mir am problemlosesten, großartige Auseinandersetzungen mit Abhängigkeiten traten nicht zu Tage. Konfigurationsdateien diverser genutzter Pakete habe ich vorerst beibehalten und werde diese ggf. zu einem späteren Zeitpunkt gegenüber neuen Versionen vergleichen. Kritische Änderungen, die eine sofortige Aktion erfordern würden, gab es bei diesen nicht. Dies betraf vor allem Postfix und Dovecot, sodass der Mailserver auch weiterhin gewohnt seinen Dienst ohne direkten Eingriff verrichtet.
Apache und PHP kompiliere ich auf dem Server stets selbst, der Neueinstieg von OpenSSL 1.1 in Debian Stretch hat mir hier vor allem bei Apache das erste Problem beschert. Die kürzlich erschienene Apache Version 2.4.26 ist die erste, die OpenSSL 1.1 offiziell unterstützt – alles darunter führt zwangsläufig zu Frustrationen. Wichtig ist also, gleich die neuste Version zu wählen. Die aktuelle PHP Version 7.1.6 ist ebenfalls OpenSSL 1.1 kompatibel, auch wenn bei der Kompilierung noch einige Warnungen ausgespuckt werden. Die PHP Erweiterung curl erfordert zudem noch das Paket libcurl4-openssl-dev. Hier benötigt es dann noch einen Symlink, damit der Konfigurationsvorgang ohne Fehler durchläuft.
Das reguläre Upgrade auf Stretch betrifft vor allem bisherige Nutzer von MySQL, sofern die entsprechenden Debianpakete genutzt werden. Während des Upgrades findet dann ein automatischer Umstieg auf MariaDB statt. Mich hat dies nicht betroffen, da ich MySQL separat installiert habe. Die zugehörige MariaDB Library scheint zudem größtenteils MySQL-kompatibel zu sein, sodass sich auch Dovecot und Postfix daran nicht aufhängen. PHP nutzt über mysqlnd sowieso seine eigene MySQL-Library.
Der größte sichtbare Benefit mit dem Umstieg auf Debian Stretch war für mich die Möglichkeit, das HTTP/2 Modul des Apache Webservers zu aktivieren. Unter Debian Jessie war dies ohne Fallstricke nicht möglich, da die dortige OpenSSL Version und nötige libnghttp2 Bibliothek zu alt waren. Beides hat sich nun gelöst, sodass nach der Nachinstallation des libnghttp2-dev Pakets und anschließenden Kompilierung HTTP/2 final aktiviert werden konnte. Damit ist auch dieser letzte große Punkt auf der ToDo Liste verschwunden 🙂
Im Großen und Ganzen ist das Upgrade unter dem Strich also sehr weich verlaufen. Eine Neuinstallation hätte da weitaus mehr Zeit und Planung beansprucht. Auch wenn noch kleinere Nacharbeiten anstehen: der größte Teil ist geschafft und der Server damit für die nächste Zeit wieder auf dem aktuellsten Stand. Danke, liebes Debian Team!
Amüsante Screenshots: Heise (sehr) kurzzeitig nicht erreichbar
Upgrade auf Apache 2.4 und PHP 5.4
Das Apache 2.4 und PHP 5.4 vor wenigen Monaten relativ zeitlich gleich erschienen sind, hatte Synergieeffekte zur Folge: das Upgrade auf die beiden neuen Versionen konnte miteinander verbunden werden. Im Grunde genommen hatte ich bereits im April vor das Upgrade vorzunehmen, habe es letztendlich aber bis zum heutigen Tage immer wieder vor mir hergeschoben. Wenn man einige Ursprungsbugs betrachtet, war diese Entscheidung vielleicht gar nicht mal so verkehrt. Die Zeit währenddessen habe ich zudem dazu genutzt, mich über mögliche Probleme schlau zu machen, sodass ich für den heutigen Tag relativ gut gerüstet schien.
Die beiden Hauptkonfigurationsdateien httpd.conf und die php.ini habe ich von den neuen Versionen übernommen und an meine bisherige Konfiguration per WinMerge angepasst. Natürlich haben beide neue Versionen in ihren jeweiligen Konfigurationsdateien Spuren hinterlassen, insgesamt lässt sich jedoch sagen, dass diese glücklicherweise relativ undramatisch ausfielen und durch Kompatibilitätsmodule wie z.B. mod_access_compat abgefedert werden konnten. Am eigentlichen Kompilierungsvorgang änderte sich auch wenig.
Und so startete die neue Generation der Webserverumgebung am Schluss nach wenigen kleinen Fehlern problemlos. Damit dürfte für die nächsten Monate wieder Ruhe einkehren, der große Wechsel ist geschafft 🙂
In den nächsten Monaten gilt nun der Hauptaugenmerk den PHP Scripts, die teilweise noch nicht ganz an PHP 5.4 angepasst sind. Wenn ihr irgendwo den ein oder anderen Fehler entdecken solltet, würde ich mich über eine kleine Mitteilung freuen. Vielen Dank! 🙂
PS: Man sollte natürlich Monitoring-Systeme vor geplanten Wartungsarbeiten abschalten, um nicht unnötig an SMS Nachrichten zu gelangen. Hinterher ist man immer schlauer 😀
Server langweile Dich nicht
Manche sollten sich (gerade bei Spielen) erst gar nicht anfangen zu ärgern, anderen dagegen täte etwas mehr Stress möglicherweise ab und an ganz gut. Bevor ich hier nun noch ganz andere Schlüsse ziehe, möchte ich vorweg halten dass der letztere Satz in diesem Zusammenhang eher auf den Server bezogen war, der im alltäglichen Gebrauch relativ wenig gefordert wird. Nun gut, es ist größtenteils ein Hobby, trotzdem darf er demnächst testweise einmal zeigen, wozu er fähig ist. Dazu gibt es nette Tools wie Apaches kleines Lasttest-Tool ab, mittels dessen Webseite-Aufrufe simuliert werden können. Diese führen dann zwangsläufig zu ganz schön hohen CPU-Peaks, aber das ist in diesem Fall ausnahmsweise mal gewollt.
Bislang habe ich nur kurz damit gespielt, für nähere Erkenntnisse werde ich mir das Tool aber demnächst nochmals genauer anschauen. Zwar ist es sehr unwahrscheinlich, dass der Server einmal tatsächlich eine so hohe Last verkraften muss, aber interessant sind Verhaltenswerte allemal. Vielleicht lässt sich so auch noch ein wenig aus der Serverkonfiguration herauskitzeln.
WebDAV – warum nicht?
Bis zum jetztigen Zeitpunkt habe ich Dateien auf den Server stets per WinSCP übertragen, doch angesichts der Möglichkeit der Eindung von WebDAV Verzeichnissen als Laufwerke in Windows erschien mir das Thema letzte Nacht interessant zu werden. Für kurze Sicherungen von Dateien auf den Server wäre diese Möglichkeit deutlich bequemer, auch als Einbindung in Backupsoftware, sofern sich das Transfervolumen in Grenzen hält. Ein extra eingerichtetes und für WebDAV freigegebenes Verzeichnis dürfte hier ausreichend sein. Nach einer kurzen Recherche im Internet scheint sich zudem die Konfiguration von Apache für WebDAV einfach zu gestalten, da es die nötigen Module schon mitbringt. Vielleicht hat hier ein Leser schon Erfahrungen in diesem Zusammenhang gemacht? Über entsprechende Kommentare wäre ich nicht abgeneigt.