Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Runbook: PHP-Upgrade

Ein geplanter Wechsel einer Exponential-Website auf eine neuere PHP-Version 8.x - Unterstützung und Erweiterungen auf einer Staging-Kopie prüfen, das Web-PHP und das PHP der Kommandozeile gemeinsam umstellen, PHP-FPM…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/hosting/runbooks/php-upgrade.md

On this page

This page is a translation. Read the English original

Runbook: PHP-Upgrade

Für Systemadministratoren, die Kunden-Websites auf eine neuere PHP-Version umstellen, eine Website nach der anderen oder einen ganzen Server. Ein PHP-Upgrade ist geplante Arbeit, kein Vorfall, aber es ist die Änderung, die am ehesten den eigenen Code eines Kunden kaputtmacht; behandeln Sie es mit einem Runbook.

Inhalt

  1. Was unterstützt wird
  2. Vorher: auf einer Staging-Kopie
  3. Die Umstellung
  4. Prüfen
  5. Rückfall

Was unterstützt wird

PHPExponential 6.0Quelle
8.0die älteste unterstützte; Velocity läuft darauf ab seinem Release 0.0.4.54Kapitel 2
8.1 bis 8.4unterstützt, einschließlich VelocityKapitel 2
8.5unterstütztKapitel 2

Die CI des Projekts führt die Testsuite auf PHP 8.1 bis 8.5 aus und prüft, dass 8.0 noch startet (Wer ist die Exponential Foundation?). Aktualisieren Sie Exponential vor einem PHP-Upgrade auf das neueste 6.0.x, damit bereits gemachte Korrekturen für PHP vorhanden sind.

Vorher: auf einer Staging-Kopie

  1. Kopieren Sie die Website auf eine Staging-Installation, die das neue PHP ausführt (Eine Website zwischen Hostern umziehen).

  2. Installieren Sie die PHP-Erweiterungen, die die Website für die neue Version braucht; die Systemprüfung des Setup-Assistenten oder der Schritt SystemCheck von exp:install listet fehlende auf (PHP-Versionen und Erweiterungen). Für Velocity:

    php bin/php/console exp:velocity ext check --allow-root-user
  3. Übernehmen Sie die php.ini-Einstellungen: memory_limit, max_execution_time, date.timezone, Upload-Grenzen, OPcache (PHP-Einstellungen für Exponential, OPcache).

  4. Lassen Sie die Website laufen, klicken Sie sich durch die wichtigsten Seiten und die Administration, veröffentlichen, laden hoch, suchen. Beobachten Sie var/log/error.log und warning.log auf Deprecations aus den eigenen Erweiterungen des Kunden.

  5. Führen Sie davor und danach einen Benchmark aus, wenn die Leistung für den Tarif zählt (Benchmark einer gehosteten Website).

  6. Sagen Sie dem Kunden, was Sie in seinem eigenen Code gefunden haben; es zu beheben, ist meist sein Teil (Support-Stufen).

Die Umstellung

  1. Kündigen Sie das Fenster an.

  2. Stellen Sie das Web-PHP der Website um:

    • PHP-FPM: Richten Sie die Website auf den Pool der neuen Version (in einem Panel: die Einstellung der PHP-Version der Website) und laden Sie den PHP-FPM-Dienst dieser Version neu. Auf Plesk ist der Dienst plesk-php<XY>-fpm, nicht php-fpm (11.6).
    • Velocity: Der Server läuft auf dem PHP der Kommandozeile, das ihn startet; starten Sie ihn mit der neuen Binärdatei (siehe Velocity für Hoster).
  3. Stellen Sie das PHP der Kommandozeile um, das die Cronjobs und Skripte der Website nutzen. Verwenden Sie dieselbe PHP-Binärdatei, die der Webserver nutzt (/opt/.../php auf Hosts mit mehreren PHP-Versionen); php -v in der Cron-Umgebung kann sich von dem Ihrer Shell unterscheiden (10.3).

  4. Leeren Sie die Caches und erzeugen Sie die Autoloads neu, dann starten Sie neu:

    php bin/php/ezpgenerateautoloads.php -e
    php bin/php/ezcache.php --clear-all --allow-root-user
    php bin/php/console exp:velocity deploy --allow-root-user     # under Velocity: every step in order

Prüfen

  • To do: php -v als Benutzer der Website, in der Cron-Umgebung und im Web (Setup > Systeminformationen zeigt das PHP, das die Administration ausliefert).
  • To do: Startseite, Administration, Anmeldung, Veröffentlichen, Hochladen, Suchen.
  • To do: Keine neuen Einträge in error.log: ./console exp:logs --tail=var/log/error.log --lines=50.
  • To do: Die Cronjobs liefen mit dem neuen PHP (ihre Logs).
  • To do: OPcache aktiv: php bin/php/cache.php opcache status --allow-root-user.

Rückfall

Behalten Sie die alte PHP-Version installiert, bis die Website für den vereinbarten Zeitraum auf der neuen gelaufen ist. Der Rückfall ist die Umstellung in umgekehrter Richtung: die PHP-Einstellung der Website zurück, das alte PHP-FPM neu laden oder Velocity mit der alten Binärdatei starten, Cron zurück, Caches geleert. Kompilierte Caches gehören zu dem PHP, das sie geschrieben hat; leeren Sie sie also auch auf dem Rückweg.

Verwandte Seiten

Werden Sie Exponential-Partner

Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x