Shopware Anleitung

Shopware PHP-Version prüfen

Shopware-Update, CLI-Befehl oder Plugin funktionieren nicht, obwohl die Website erreichbar ist. Diese Anleitung zeigt, wie Web-PHP, CLI-PHP, PHP-Erweiterungen, Konfigurationsdateien und Hosting-Einstellungen systematisch geprüft werden.

Fehlerbild

Shopware, Composer oder die CLI verwendet eine falsche oder nicht unterstützte PHP-Version.

Häufige Ursache

Webserver und Kommandozeile verwenden unterschiedliche PHP-Versionen oder unterschiedliche php.ini-Dateien.

Wichtig

Nicht nur die Versionsnummer prüfen. Erweiterungen, Speicherlimit, OPcache und CLI-Konfiguration gehören dazu.

Inhaltsverzeichnis

  1. Anforderungen festlegen
  2. Web-PHP prüfen
  3. CLI-PHP prüfen
  4. Web und CLI vergleichen
  5. Verfügbare PHP-Pfade finden
  6. php.ini prüfen
  7. PHP-Erweiterungen prüfen
  8. Speicher- und Laufzeitlimits
  9. Composer mit richtigem PHP starten
  10. Cronjobs und Worker prüfen
  11. PHP-Version sicher wechseln
  12. Typische Fehler auswerten
  13. Abschlusskontrolle

1. Passende PHP-Version für Shopware festlegen

Maßgeblich ist die konkrete Shopware-Version. Vor einem Update müssen zusätzlich Plugins, Themes, Composer-Pakete und Serverumgebung mit der vorgesehenen PHP-Version kompatibel sein.

Shopware-Version PHP-Anforderung
Shopware 6.5 PHP 8.1 oder höher innerhalb der jeweils unterstützten Versionen
Shopware 6.6 PHP 8.2
Shopware 6.7 PHP 8.2, 8.3 oder 8.4
Aktuelle Zielversion prüfen

Systemanforderungen können sich mit neuen Shopware-Versionen ändern. Vor Installation oder Update immer die Anforderungen der konkret eingesetzten Zielversion kontrollieren.

2. PHP-Version des Webservers prüfen

Die im Browser ausgeführte PHP-Version wird normalerweise im Hosting-Menü eingestellt. Zusätzlich kann sie kurzzeitig mit einer geschützten PHP-Datei geprüft werden.

Temporäre Datei php-version.php
<?php
echo PHP_VERSION;
Prüfdatei sofort wieder löschen

Eine ausführliche phpinfo-Datei kann sensible Serverinformationen offenlegen. Für die reine Versionsprüfung reicht die kurze Ausgabe.

3. PHP-Version der Kommandozeile prüfen

Shell
php -v

Mit festem PHP-Pfad

Shell
/usr/bin/php -v

Shopware mit diesem PHP starten

Shopware CLI
/usr/bin/php bin/console --version
CLI-Version ist für Wartungsbefehle entscheidend

Updates, Composer, Cronjobs, Scheduled Tasks und Message Queue laufen häufig über PHP-CLI. Eine korrekte Web-PHP-Version reicht dafür nicht.

4. Web-PHP und CLI-PHP vergleichen

Bereich Typische Verwendung Prüfung
Web-PHP Storefront, Administration und HTTP-Anfragen Hosting-Menü oder temporäre PHP-Datei
CLI-PHP Shopware-Konsole, Composer, Cronjobs und Worker php -v
Cronjob-PHP Automatische Hintergrundprozesse Absoluten PHP-Pfad im Cronjob prüfen
Häufiger Fehler nach Hosting-Umstellung

Im Hosting-Menü wird nur Web-PHP geändert. Cronjobs und SSH verwenden weiterhin eine ältere Standardversion.

5. Verfügbare PHP-Pfade finden

Aktiv verwendeten Pfad anzeigen

Shell
which php
command -v php

Typische PHP-Binaries suchen

Shell
ls -lah /usr/bin/php*
ls -lah /usr/local/bin/php*

Mehrere Versionen vergleichen

Shell
/usr/bin/php8.2 -v
/usr/bin/php8.3 -v
/usr/bin/php8.4 -v
Pfade sind hostingabhängig

Die Beispiele müssen zum Server passen. Managed Hoster verwenden oft eigene Pfade wie /usr/local/php8.3/bin/php.

6. Verwendete php.ini kontrollieren

CLI-Konfigurationsdateien anzeigen

Shell
/usr/bin/php --ini

Wichtige Werte anzeigen

Shell
/usr/bin/php -r "
echo 'PHP: ', PHP_VERSION, PHP_EOL;
echo 'php.ini: ', php_ini_loaded_file(), PHP_EOL;
echo 'memory_limit: ', ini_get('memory_limit'), PHP_EOL;
echo 'max_execution_time: ', ini_get('max_execution_time'), PHP_EOL;
"

PHP-FPM, Apache-Modul und CLI können unterschiedliche Konfigurationsdateien laden. Änderungen an einer php.ini wirken daher nicht automatisch in allen Bereichen.

7. Erforderliche PHP-Erweiterungen prüfen

Geladene Erweiterungen anzeigen

Shell
/usr/bin/php -m

Nach wichtigen Modulen filtern

Shell
/usr/bin/php -m | grep -Ei "curl|dom|fileinfo|gd|intl|mbstring|openssl|pdo|xml|zip|opcache"
  • cURL
  • DOM und XML
  • Fileinfo
  • GD oder geeignete Bildverarbeitung
  • Intl
  • Mbstring
  • OpenSSL
  • PDO mit passendem Datenbanktreiber
  • ZIP
  • OPcache für den Produktivbetrieb
Web und CLI getrennt prüfen

Ein Modul kann im Web-PHP geladen sein, im CLI-PHP aber fehlen. Das führt beispielsweise zu Fehlern bei Composer, Bildern, Importen oder Shopware-Konsolenbefehlen.

8. Speicher- und Laufzeitlimits prüfen

Aktuelle CLI-Werte anzeigen

Shell
/usr/bin/php -i | grep -Ei "memory_limit|max_execution_time|max_input_vars|upload_max_filesize|post_max_size"
Wert Bedeutung
memory_limit Maximaler Arbeitsspeicher pro PHP-Prozess
max_execution_time Zeitlimit für Web-Anfragen; CLI kann abweichen
upload_max_filesize Maximale Größe einer einzelnen hochgeladenen Datei
post_max_size Maximale Größe einer vollständigen POST-Anfrage
max_input_vars Anzahl verarbeitbarer Eingabewerte

Passende Werte hängen von Datenmenge, Erweiterungen, Importen und Hosting ab. Limits nicht ohne Fehleranalyse beliebig erhöhen.

9. Composer mit der richtigen PHP-Version ausführen

Composer-Version prüfen

Composer
composer --version

Composer explizit mit PHP starten

Composer mit festem PHP-Pfad
/usr/bin/php /usr/local/bin/composer --version

Plattformanforderungen prüfen

Composer
composer check-platform-reqs
Platform-Checks nicht umgehen

Optionen, die PHP- oder Erweiterungsanforderungen ignorieren, können zwar eine Installation erzwingen, erzeugen aber einen technisch nicht unterstützten Systemstand.

10. PHP-Version in Cronjobs und Workern prüfen

Scheduled Tasks mit festem PHP-Pfad

Cronjob-Beispiel
* * * * * cd /pfad/zum/shopware-verzeichnis && /usr/bin/php bin/console scheduled-task:run --time-limit=55 >> /dev/null 2>&1

Message Queue mit festem PHP-Pfad

Shopware 6.5 und neuer
* * * * * cd /pfad/zum/shopware-verzeichnis && /usr/bin/php bin/console messenger:consume async low_priority --time-limit=55 --memory-limit=512M >> /dev/null 2>&1

Weitere Prüfungen enthält die Anleitung Shopware Cronjobs prüfen.

11. PHP-Version sicher wechseln

  1. Shopware-Zielversion und Anforderungen prüfen.
  2. Plugin- und Theme-Kompatibilität prüfen.
  3. Vollständiges Backup erstellen.
  4. Neue PHP-Version im Testsystem aktivieren.
  5. Erforderliche PHP-Erweiterungen installieren.
  6. Web-PHP und CLI-PHP gemeinsam umstellen.
  7. Cronjobs und Prozessmanager anpassen.
  8. Composer-Plattformanforderungen prüfen.
  9. Cache neu aufbauen.
  10. Storefront, Administration und Checkout testen.
OPcache und PHP-FPM berücksichtigen

Nach einer Umstellung kann ein kontrollierter Neustart des zuständigen PHP-FPM-Prozesses oder Hostings notwendig sein, damit alte Bytecode-Dateien nicht weiterverwendet werden.

12. Typische Fehler nach einem PHP-Wechsel

Fehlerhinweis Mögliche Ursache
Your PHP version does not satisfy that requirement PHP-Version passt nicht zu Composer-Paketen
Call to undefined function Benötigte PHP-Erweiterung fehlt
Class not found Composer-Abhängigkeiten oder Autoloader unvollständig
Allowed memory size exhausted Speicherlimit der verwendeten SAPI zu niedrig
502 Bad Gateway PHP-FPM startet nicht oder Socket-Konfiguration ist falsch
CLI funktioniert, Website nicht Webserver verwendet andere PHP-Version oder php.ini
Website funktioniert, Cronjob nicht Cronjob verwendet alten PHP-Pfad

Shopware-Logs prüfen

Shell
tail -n 200 var/log/prod-*.log

13. Abschlusskontrolle

  • Shopware-Version und PHP-Anforderung sind bekannt.
  • Web-PHP verwendet die richtige Version.
  • CLI-PHP verwendet die richtige Version.
  • Cronjobs verwenden einen absoluten PHP-Pfad.
  • Die richtige php.ini wird geladen.
  • Erforderliche PHP-Erweiterungen sind aktiv.
  • Speicher- und Uploadlimits sind ausreichend.
  • Composer-Plattformprüfung läuft erfolgreich.
  • Shopware-CLI startet ohne Fehler.
  • Cache wurde neu aufgebaut.
  • Storefront und Administration funktionieren.
  • Checkout und E-Mail-Versand wurden getestet.
  • Scheduled Tasks und Message Queue laufen.
  • Logs enthalten keine neuen PHP-Fehler.
PHP-Umgebung korrekt

Die Prüfung ist abgeschlossen, wenn Webserver, CLI, Composer, Cronjobs und Worker dieselbe unterstützte PHP-Basis mit den erforderlichen Erweiterungen verwenden.

Häufige Fragen

Wie prüfe ich die PHP-Version über SSH?

Mit php -v beziehungsweise dem absoluten Pfad wie /usr/bin/php -v.

Warum zeigt Shopware eine andere PHP-Version als SSH?

Webserver und Kommandozeile können unterschiedliche PHP-Binaries und Konfigurationsdateien verwenden.

Welche PHP-Version benötigt Shopware 6.7?

Shopware 6.7 unterstützt PHP 8.2, 8.3 und 8.4. Für spätere Versionen müssen die jeweils aktuellen Systemanforderungen geprüft werden.

Warum funktioniert Composer nach dem PHP-Wechsel nicht?

Composer kann über ein anderes PHP gestartet werden oder ein benötigtes Modul fehlt. PHP-Pfad und composer check-platform-reqs prüfen.

Muss ich Cronjobs nach einem PHP-Wechsel anpassen?

Ja, wenn dort ein alter absoluter PHP-Pfad verwendet wird oder die Hosting-Oberfläche weiterhin die bisherige Version auswählt.

Reicht es, PHP nur im Hosting-Menü umzustellen?

Nicht immer. CLI, Composer, Cronjobs, Worker und PHP-FPM müssen ebenfalls kontrolliert werden.

Verwandte Shopware-Anleitungen

Shopware verwendet weiterhin die falsche PHP-Version?

Ich prüfe Web-PHP, CLI-PHP, Composer, Cronjobs, Erweiterungen und Serverkonfiguration direkt in der bestehenden Shopware-Installation.

Technische Prüfung anfragen
Stand: Juli 2026 · Hinweise gelten für selbst gehostete Shopware-6-Installationen. Unterstützte PHP-Versionen, Erweiterungen und Hosting-Pfade können sich je nach Shopware-Version ändern.