Umstieg auf Php 7

Guten Morgen,

Wir haben zurzeit einen Shop, welcher stabil und fehlerfrei läuft *auf Holz klopf*. Allerdings noch mit Php 5.6.31.

Php 7 soll ja einen ganz schönen Geschwindigkeitsbonus bringen. Ich bin kein It-Profi, sondern habe mich selbst rangemacht, das alles zu lernen, um den Shop aufzubauen. Daher will ich hier nichts kaputtmachen.

Kann man einfach im Hoster-Backend auf eine 7er Version umstellen (möglich wäre 7.0.23)? Oder kann es mir dann den kompletten Shop zerschiessen? Kann ich irgendwie im Vorhinein abklären, ob das funktionieren würde?

Wir sind gehostet bei aixpro und dort wurde mir auch zugesagt, das der Shop jeden Tag gesichert wird. Aber ich würde mir einfach gerne das ganze Rundherum sparen, ein Backup einspielen zu lassen, wenn ich das vorher abklären kann.

Kann man auf 7 umstellen, schauen, ob es funktioniert und falls nicht, wieder zurückstellen? Oder wären in diesem Fall gewisse Einstellungen verstellt, das so etwas nur noch mehr Probleme bereiten würde?

Sind Plugins auch Php Versions abhängig? 

Wäre toll, wenn mich da jmd aufklären könnte. Vielen Dank!

Hall Bulz,

nach meiner Erfahrung war die Umstellung in allen Shops letztlich problemlos. Am sichersten fährst Du, wenn Dein Hoster auch den Ioncube-Loader für PHP 7.0 installiert hat. Dann müsste eigentlich alles klar gehen. Meine Checkliste für’s Vorgehen:

  1. Auf aktuelle SW-Version updaten
  2. Im Shopware-Store den Shop/die Domain mit der aktuelle Version kennzeichnen, damit später die richtigen Plugin-Versionen geladen werden
  3. Shop in Wartungsmodus und den Cache auf Bearbeitungsmodus
  4. Lizenzpflichtige Plugins deaktivieren, den Shopware-Lizenz-Manager komplett entfernen
  5. Serverseitig auf PHP7 umstellen
  6. Den Lizenz-Manager neu installieren
  7. Alle Plugins updaten/aktualisieren und wieder aktivieren
  8. Theme neu kompilieren
  9. Cache wieder in Produktivmodus, Wartungsmodus abschalten

Viel Erfolg!

Geert

PS: Nachtrag - natürlich vorher vollständigen Backup (Dateien, Datenbank) nicht vergessen!

 

1 Like

Danke für die Antwort.

Habe jetzt mal auf Php 7 umgestellt. Die Startseite des Shops funktioniert dann, aber sämtliche Kategorien oder das Backend enden in: HTTP ERROR 500

Hab dann wieder zurückgestellt auf 5.6.31 und alles funktioniert wieder.

Das error.log ist voll mit:

[Fri Sep 22 09:55:55 2017] [warn] [client …] mod_fcgid: stderr: PHP Fatal error:  The file /var/www/vhosts/…/engine/Shopware/Plugins/Community/Core/SwagLicense/Bootstrap.php was encoded by the ionCube Encoder for PHP 5.4 and cannot run under PHP 7.0., referer: https://…/
[Fri Sep 22 09:55:55 2017] [warn] [client …] mod_fcgid: stderr:  Please ask the provider of the script to provide a version encoded with the ionCube Encoder for PHP 5.6. in Unknown on line 0, referer: 

Werde mich da wohl etwas reinfuchsen müssen…

 

Das error.log ist voll mit:

[Fri Sep 22 09:55:55 2017] [warn] [client …] mod_fcgid: stderr: PHP Fatal error:  The file /var/www/vhosts/…/engine/Shopware/Plugins/Community/Core/ SwagLicense /Bootstrap.php was encoded by the ionCube Encoder for PHP 5.4 and cannot run under PHP 7.0., referer: https://…/
[Fri Sep 22 09:55:55 2017] [warn] [client …] mod_fcgid: stderr:  Please ask the provider of the script to provide a version encoded with the ionCube Encoder for PHP 5.6. in Unknown on line 0, referer:

Ja, SwagLicense vor der Umstellung komplett rausschmeißen und nach der Umstellung neu runterladen und installieren.

Gruß

Geert

Swas License ist ja der Lizenzmanager, oder?

Kann man den einfach so löschen? 

Grundsätzlich ja, vielleicht vorher Deine Lizenzkeys sichern/kopieren, und dann gibt’s hier den aktuellen:

Gruß

Geert

@vanwittlaer schrieb:

Hall Bulz,

nach meiner Erfahrung war die Umstellung in allen Shops letztlich problemlos. Am sichersten fährst Du, wenn Dein Hoster auch den Ioncube-Loader für PHP 7.0 installiert hat. Dann müsste eigentlich alles klar gehen. Meine Checkliste für’s Vorgehen:

  1. Auf aktuelle SW-Version updaten
  2. Im Shopware-Store den Shop/die Domain mit der aktuelle Version kennzeichnen, damit später die richtigen Plugin-Versionen geladen werden
  3. Shop in Wartungsmodus und den Cache auf Bearbeitungsmodus
  4. Lizenzpflichtige Plugins deaktivieren, den Shopware-Lizenz-Manager komplett entfernen
  5. Serverseitig auf PHP7 umstellen
  6. Den Lizenz-Manager neu installieren
  7. Alle Plugins updaten/aktualisieren und wieder aktivieren
  8. Theme neu kompilieren
  9. Cache wieder in Produktivmodus, Wartungsmodus abschalten

Viel Erfolg!

Geert

PS: Nachtrag - natürlich vorher vollständigen Backup (Dateien, Datenbank) nicht vergessen!

 

Also ich habe das jetzt genau so gemacht, wie aufgelistet und es scheint alles zu funktionieren. Wichtig war wie gesagt, zuerst alle Kaufplugins zu deaktivieren und den Lizenzmanager komplett zu löschen.

Hoffen wir, das ich nichts übersehen habe und alles funktioniert. :wink: Gibt es eine Möglichkeit, sich Fehler anzeigen zu lassen? Ich hab jetzt einfach mal selbst einen Vorgang durchgespielt. Kontoerstellung, Bestellung, Warenkorb ändern, absenden. Das funktioniert alles. Aber man vergisst ja oftmals Kleinigkeiten. 

Hey das freut mich, wenn es so geklappt hat! Oben ist ein Knopf “Bedanken” :slight_smile:

Fehler anzeigen lassen - ja klar, gibt’s jede Menge Möglichkeiten. Das Wichtigste ist wahrscheinlich das PHP-Errorlog auf Deinem Server, in Verbindung mit den richtigen Einstellung in der Shopware config.php (in der Shopware-Doku zu finden).

Grüße

Geert

Mit php 7 klappt das bei mir auch alles reibungslos…nur mit php 7.1 erhalte ich seltsamerweise immer einen 500er Fehler!

Ein 500-Fehler ist ja allgemein und sagt so gar nichts, da müsstest Du den konkreten PHP-Fehler aus dem error.log raussuchen.

Gruß

Geert

Leider sind immer noch nicht alle Plugins php 7.1 kompatibel in Verbindung mit dem neuesten Ioncube Loader…