Rolf Dautrich, WebmasterMeist nach etwa zwei Jahren melde ich mich mal wieder als Webmaster zu Wort. Die letzte größere Aktion gab es im Herbst 2020 mit der Einführung des (damals) neuen und vor allem auf Mobilgeräten deutlich besser geeigneten Designs. Seither hat sich –soweit für Besucher sichtbar– wenig Grundlegendes geändert. Doch in den letzten Monaten hat sich hinter den Kulissen einiges getan, und auch in den kommenden Monaten werde ich nicht arbeitslos werden. Dazu weiter unten mehr.

An die Oberfläche, die der Besucher der Website sieht, haben es nur zwei Änderungen geschafft:

Laufschrift

Datum Uhrzeit vs. Wettervorsage

Für Technik-Interessierte erkläre ich weiter unten, was die Gründe für meine Aktivitäten sind. Allen anderen bin ich nicht böse, wenn sie diesen Beitrag jetzt fluchtartig verlassen.


Ab hier nur für Technik-Interessierte

Um zu verstehen, was mich in diesen Wochen und Monaten beschäftigt, muss ich ein wenig weiter ausholen.

Damit überhaupt eine Website wie www.neudorf-mkk.de mit einem Content Management System funktioniert, ist zunächst einmal ein Web-Dienstleister gefragt. Dieser muss (mindestens) folgende Komponenten bereitstellen:

Alle beteiligten Software-Komponenten erhalten mehr oder weniger häufiger Updates: Zur Korrektur von Fehlern, zum Schließen von Sicherheitslücken und/oder zur Erweiterung des Funktionsumfangs. Und wie beim heimischen PC gilt die dringende Empfehlung, diese Updates zeitnah zu installieren, um nicht dem nächstbesten Hacker zum Opfer zu fallen.

Für das weitere Verständnis ist das Schema bedeutsam, wie Server-Software typischerweise versioniert wird. Zu dem Zeitpunkt, als ich diesen Beitrag schreibe, läuft unsere Website mit PHP 7.4.30. Dabei ist die '7' die sogenannte Hauptversionsnummer (engl. Major Release), die '4' die Nebenversionsnummer (Minor Release) und die '30' die Revisionsnummer.
Änderungen bei der Revisionsnummer machen normalerweise kein Problem, denn es handelt sich typischerweise nur um Fehlerbehebungen.
Ändert sich die Nebenversionsnummer, so werden zusätzliche Funktionen angeboten, was normalerweise für ein bestehendes System ebenfalls kein Problem darstellt.

Kritisch sind jedoch Änderungen in der Hauptversionsnummer. Diese beinhalten nämlich üblicherweise einen Bruch. Das kann bedeuten, dass neue Schnittstellen für die anderen beteiligten Software-Komponenten geschaffen werden, aber vor allem auch, dass manche (vorher als "veraltet" gekennzeichneten) Funktionen nicht mehr unterstützt werden. Das kann je nach eingesetzter Software ein kleineres, aber unter Umständen ein massives Problem sein. In (fast) jedem Fall ist der Übergang auf eine neue Hauptversion mit ziemlich viel Aufwand verbunden.

Zusätzlich kompliziert wird das Ganze, weil es Abhängigkeiten zwischen Software-Komponenten gibt: Z.B. setzt Joomla 4 mindestens die PHP-Version 7.4.x voraus, empfohlen wird jedoch PHP 8.x. Zusätzlich kompliziert wird das in unserem Fall dadurch, dass nicht nur Joomla selbst im Einsatz ist, sondern noch zahlreiche Erweiterungen. Und diese Erweiterungen müssen ebenfalls mit der höheren PHP-Version zusammen funktionieren.

Und manchmal kommt alles Ungemach zusammen: In den letzten zwei Jahren hat es neue Hauptversionen von MySQL, PHP und Joomla gegeben.

MySQL

Dabei war die Umstellung von MySQL 5.7.x auf MySQL 8.0.x unproblematisch (die Versionen 6 und 7 sind nie erschienen).

PHP

Dagegen hat mich die Umstellung von PHP 7.4.x auf PHP 8.0.x in den letzten Monaten ziemlich beschäftigt. Nicht zuletzt deshalb, weil es einen Zeitdruck dadurch gibt, dass PHP 7.4 das Ende seines Lebenszyklus erreicht hat und im November 2022 letztmals Sicherheitsupdates bekommen wird. Zwar funktioniert die derzeit aktive Joomla-Version 3.10.11 problemlos mit PHP 8. Dies gilt allerdings nicht notwendigerweise für die eingesetzten mehr als 20 Erweiterungen. Mittlerweile gibt es, wie ich nach vielen Recherchen herausgefunden habe, für die meisten dieser Erweiterungen aktualisierte Versionen. Von einigen Erweiterungen musste ich mich jedoch trennen und diese durch andere Erweiterungen ersetzen oder auf die Funktion verzichten.

Damit sind wir wieder am Anfang dieses Beitrags angekommen: Die Erweiterungen, die das Datum, die Uhrzeit und die Laufschrift angezeigt haben, waren relativ alt und wurden von ihren Entwicklern nicht mehr an PHP 8 angepasst. Als ich mal kurz versucht habe, die Website mit PHP 8 zu betreiben, wurde nicht mehr die Homepage angezeigt, sondern nur noch eine weiße, leere Seite!

Also musste ich mir andere Lösungen einfallen lassen: Für die Laufschrift war dies eine andere Erweiterung, bei Datum und Uhrzeit der Verzicht auf diese Funktion und der Ersatz durch die minimalistische Wettervorhersage. Danach war ein Test mit PHP 8 erfolgreich. Ich werde also kurzfristig auf PHP 8.0.20 umstellen können.

Joomla

In den nächsten Monaten wird mich die Umstellung auf die aktuelle Hauptversion 4 von Joomla beschäftigen. In den letzten Monaten habe ich bereits feststellen können, dass fast alle eingesetzten Erweiterungen (nach Angaben ihrer Entwickler) in der derzeitigen oder einer neuen, bereits verfügbaren Version unter Joomla 4 lauffähig sind. Momentan fehlt mir noch genau eine Erweiterung, für die es noch in diesem Jahr eine Joomla-4-taugliche Version geben soll.

Für den Rest von 2022 plane ich ein umfangreiches Testprogramm. Ich erwarte, dass die Website Anfang 2023 mit Joomla 4 laufen wird. Damit wäre ich noch gut in der Zeit, denn die derzeitige Joomla-Version 3.10.x wird bis August 2023 unterstützt werden.


Danach ist nach derzeitigem Stand ein wenig Ruhe angesagt. Aber nicht zu viel, denn PHP 8.1 ist zwar nur eine Nebenversion, bringt aber offenbar trotzdem einige Erweiterungen aus dem Tritt. Arbeitslos werde ich also nicht..... 😉

Ihr / Euer Webmaster

Rolf Dautrich