Die PHP Version 8.0 erschien im November 2020. Wie bei jedem Upgrade der PHP-Version muss unbedingt darauf geachtet werden, dass alle Programme und deren Scripts die Version unterstützen oder ob eventuell Funktionen verändert oder gar entfernt wurden.
Vorbereitungen vor dem Upgrade
Bevor du mit dem Upgrade startest, empfehle ich, den Werbserver zu stoppen, um zu verhindern, dass möglicherweise PHP-Quellcode im Klartext für Besucher deiner Website zu lesen ist.
Stelle außerdem sicher, dass die neue PHP-Version kompatibel mit allen eingesetzten Programmen und Scripts kompatibel ist, welche PHP verwenden. Alle Neuerungen in PHP 8.0 findest du beispielsweise hier: https://kinsta.com/de/blog/php-8/.
Stelle jetzt noch sicher, dass sich dein Linux auf dem neuesten Stand befindet:
apt-get update && apt-get upgrade
Derzeit installierte Module auflisten
Bevor du mit dem Upgrade startest, lässt du dir alle installierten PHP-Module auflisten. Denn diese müssen ebenfalls aktualisiert werden.
dpkg --get-selections | grep -i php
Du erhältst eine Liste, die in etwa so aussieht:
php-common install php7.4-bcmath install php7.4-cli install php7.4-curl install php7.4-fpm install php7.4-gd install php7.4-json install php7.4-mbstring install php7.4-mysql install php7.4-opcache install php7.4-zip install
PHP 8.0 installieren
Da du jetzt weißt, welche PHP-Module in Verwendung sind, kannst du PHP 8.0 installieren. Danach folgen die einzelnen Module.
apt-get install php8.0
Nun werden die Module installiert. Da möglicherweise nicht alle für PHP 8 verfügbar sind, empfehle ich diese einzeln zu installieren: Verwende dazu den Namen aus der Liste von oben und ersetze die Version mit 8.0. Der erste Befehl sieht dann so aus:
apt-get install php8.0-common
Apache2 für PHP 8 einrichten
Wird Apache2 als Webserver verwendet, muss folgende Einrichtung noch durchgeführt werden. Führe zunächst erneut ein Update des Systems durch:
apt-get update
Installiere nun folgendes Modul für Apache2:
apt-get install libapache2-mod-php8.0
Deaktiviere jetzt die alte PHP-Version, in meinem Falle die Version 7.4:
a2dismod php7.4
Und aktiviere nun PHP 8.0:
a2enmod php8.0
Nun wird der Webserver noch einmal neu gestartet.
systemctl restart apache2
Der Webserver sollte nun starten und PHP 8.0 ist aktiv.
Alte PHP-Version- und Module deinstallieren
Die alte Version von PHP wurde nur deaktiviert, nicht deinstalliert. Teste PHP 8 am besten ein paar Tage, funktioniert alles, kannst du die alte Version dann komplett vom System löschen:
apt-get purge -y php7.*
Bei Fragen oder Anregungen freue ich mich natürlich über eure Kommentare.
Über mich
Ich bin Janis (aka. EurenikZ), 25 Jahre alt und komme aus der Nähe von Frankfurt am Main. Ich habe eine abgeschlossene IHK-Ausbildung zum Fachinformatiker für Systemintegration und arbeite als Junior IT-Administrator in einem IT-Systemhaus. Neben meinem IT-Blog beschäftige ich mich viel mit diversen IT-Themen und meinen Webseiten sowie Telegram Bots und biete IT-Dienstleistungen an.