Wie kann ich die PHP-Version im LAMP Stack ändern?
- Überblick und Voraussetzungen
- Verfügbare PHP-Versionen installieren
- Apache konfigurieren (mod_php versus php-fpm)
- Konfigurationsdateien und Erweiterungen prüfen
- Apache neu starten und Version prüfen
- Fehlerbehebung und Rückfallplan
Überblick und Voraussetzungen
Um die PHP-Version in einem LAMP-Stack (Linux, Apache, MySQL/MariaDB, PHP) zu ändern, benötigen Sie Root- oder Sudo-Rechte auf dem Server. Stellen Sie sicher, dass Sie wissen, welche Distribution (z. B. Ubuntu/Debian oder CentOS/RHEL) Sie verwenden, denn die Paketnamen und Befehle unterscheiden sich. Erstellen Sie vor Änderungen eine Datensicherung Ihrer Konfigurationsdateien und Websites, damit Sie bei Problemen zurückkehren können.
Verfügbare PHP-Versionen installieren
Unter Debian/Ubuntu fügen Sie gegebenenfalls ein Repository wie Ondřej Surýs PPA hinzu, das mehrere PHP-Versionen anbietet. Aktualisieren Sie danach die Paketliste und installieren die gewünschte PHP-Version sowie die benötigten Module (z. B. php7.4-mysql, php7.4-xml). Unter CentOS/RHEL aktivieren Sie das Remi-Repository und installieren die gewünschte php-Version-Packages. Achten Sie darauf, sowohl die CLI-Pakete als auch die FPM- oder Apache-Module zu installieren, je nachdem wie Apache PHP nutzt (mod_php vs. php-fpm).
Apache konfigurieren (mod_php versus php-fpm)
Wenn Apache mit mod_php betrieben wird, müssen Sie das aktuelle PHP-Apache-Modul deaktivieren und das Modul der neuen Version aktivieren. Unter Debian/Ubuntu geschieht das typischerweise mit a2dismod phpX.Y und a2enmod phpA.B, gefolgt von einem Apache-Neustart. Bei Verwendung von php-fpm konfigurieren Sie Apache so, dass Requests an den passenden PHP-FPM-Socket oder -Port weitergeleitet werden. Das kann bedeuten, dass Sie die Proxy-/SetHandler- oder den
Konfigurationsdateien und Erweiterungen prüfen
Überprüfen Sie die php.ini der neuen Version auf wichtige Einstellungen wie memory_limit, upload_max_filesize, post_max_size, max_execution_time und error_reporting. Installieren oder aktivieren Sie alle erforderlichen PHP-Erweiterungen, die Ihre Anwendungen benötigen (z. B. gd, mbstring, curl, zip). Prüfen Sie Kompatibilität von Anwendungen mit der neuen PHP-Version, da Breaking Changes oder entfernte Funktionen vorhanden sein können.
Apache neu starten und Version prüfen
Starten oder reloaden Sie Apache nach den Änderungen, damit die neue PHP-Version wirksam wird. Nutzen Sie zur Kontrolle php -v auf der Kommandozeile (zeigt die CLI-Version) und eine kleine PHP-Info-Seite () unter dem Webroot, um die vom Webserver verwendete PHP-Version und die geladenen Module zu überprüfen. Entfernen Sie die phpinfo()-Datei wieder nach der Prüfung aus Sicherheitsgründen.
Fehlerbehebung und Rückfallplan
Bei Problemen prüfen Sie die Apache-Logs (z. B. /var/log/apache2/error.log oder /var/log/httpd/error_log) und die php-fpm-Logs. Häufige Fehler sind fehlende Module, falsche Socket-Pfade oder Berechtigungsprobleme. Haben Sie einen Rückfallplan: notieren Sie vorherige Paketstände oder behalten Sie die alte PHP-Version installiert, um bei Kompatibilitätsproblemen schnell zurückwechseln zu können.
