ich versuche grade ein frisches Backup zum laufen zu bringen.
Bisher immer im eigenen Ordner das Backup eingespielt, in der env.local den Ordner und Datenbank angepast, im Admin angemeldet und da entsprechend den Verkaufskanal geändert. Hat eigentlich immer gut funktioniert.
Nu scheitert es am letzten Punkt, da ich mich nicht in Admin anmelden kann.
Warning: include(/XXXXX/htdocs/XXXXXXX.de/vendor/composer/../swag/paypal/src/SwagPayPal.php): Failed to open stream: No such file or directory
Habe ich den Vendor noch einmal gelöscht und neu eingespielt, gleicher Fehler, per FTP direkt kopiert auch der selbe Fehler. Der Ordner scheint dann ja in der Liver Version auch nicht zu exsistieren?
Shopware 6.7.4.2 / Paypal 10.3.0 / IONOS (Ja ich weiß, bisher aber keine Probleme gehabt)
die Pfade für APP URL und Composer Home in der env. passen, eben noch einmal geprüft.
Der komplette Pfad wäre in der Tat interessant, aber gibt er tatsächlich so gekürzt in der Fehlermeldung aus.
ErrorException:
Warning: include(/XXXXX.de/vendor/composer/../swag/paypal/src/SwagPayPal.php): Failed to open stream: No such file or directory
at /XXXXX.de/vendor/symfony/error-handler/DebugClassLoader.php:306
at class_exists()
(/XXXXX.de/vendor/shopware/core/Framework/Plugin/KernelPluginLoader/KernelPluginLoader.php:278)
at Shopware\Core\Framework\Plugin\KernelPluginLoader\KernelPluginLoader->instantiatePlugins()
(/XXXXX.de/vendor/shopware/core/Framework/Plugin/KernelPluginLoader/KernelPluginLoader.php:122)
at Shopware\Core\Framework\Plugin\KernelPluginLoader\KernelPluginLoader->initializePlugins()
(/XXXXX.de/vendor/shopware/core/Kernel.php:143)
at Shopware\Core\Kernel->boot()
(/XXXXX.de/vendor/shopware/core/Kernel.php:127)
at Shopware\Core\Kernel->handle()
(/XXXXX.de/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35)
at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run()
(/XXXXX.de/vendor/autoload_runtime.php:29)
at require_once(‚/XXXXX.de/vendor/autoload_runtime.php‘)
(/XXXXX.de/public/index.php:10)
Ok, update / uninstall / remove per composer funktioniert auch nicht kommen die gleichen Fehlermeldungen.
Ältere Backups ausprobiert 6.6.10.x funktionierte dann wieder problemlos. Update auf oben genannte Versionen gemacht, Backup erstellt, Dateien in ein anderes Verzeichnis verschoben und Backup eingespielt.
Fehlermeldungen siehe oben, Backup gelöscht und die Dateien wieder zurückgeschoben, funktioniert wieder.
Sodele wenn ich vor dem Backup Paypal deinstalliert funktioniert dieses.
Paypal wieder installiert und nochmal probiert => gleiches Problem wie gehabt.
Werde Tage eine frische Installation probieren mit den beiden Versionen. Mal schauen was dann passiert.
Gesetzt dem Fall es klappt, wenn ich jetzt die Ordner files/media, public/media sowie die Datenbank drüberbügel, müssten doch beide Shops auf dem gleichen Stand sein. Oder ist das zu einfach gedacht?
Mit dem Fehler solltest du eigentlich nicht in der Lage sein PayPal zu deinstallieren bzw. installieren. Außer du meinst damit per composer hinzuzufügen bzw. zu entfernen.
Der Fehler ist ziemlich eindeutig ein composer Fehler. Der Pfad zu composer stimmt in deiner .env.local.
Das war ein altes Backup mit 6.6 und Paypal 9.7 welches ich auf oben genannten Stand gebracht habe. Da funktionierte beides im Backend ganz normal und ohne Fehlermeldung.
Anschließend noch auf 9er Version belassen, oder auf 10 aktualisiert und deinstalliert funktionieren die Backups. Sobald die 10er installiert ist nicht mehr. Ich habe mal vom Test und Liveserver die Vendor Verzeichnisse runtergeladen und keine hat oben genanntes Verzeichnis oder fehlende Datei.
Filezilla zeigt auch keine fehlgeschlagenen übertragungen an.
Nicht 100% sicher, aber in deinen Composer Dateien stehen ggf. absolute Pfade drin, die in der neuen Umgebung nicht mehr existieren. Daher vielleicht auch der Fehler.
Daher das composer dump-autload, was die Dateien neu erstellt.
Aber wenn das nicht hilft, dann ist Ferndiagnose schwierig.
Ich schaue die Tage noch einmal alles in Ruhe durch. Hast mich grade auch noch auf einen Gedanken gebracht, aber jetzt brauch ich erstmal bisschen frische Luft
Moin Max_Shop, denke ich bin jetzt einen Schritt weiter gekommen.
Habe jetzt mal Stück für Stück den Vendor Ordner kopiert. Dabei ist beim Ordner “Swag” ein Fehler passiert und konnte nicht kopiert werden. Nun das merkwürdige. Wenn ich auf dem Webserver den FTP Browser nutze, zeigt er darin eine Datei namens Paypal an, die sich nicht herunterladen lässt. Wenn ich es mit Filezilla versuche, zeigt er das als Ordner-Verknüpfung an (wie bei Windows) die mich beim draufklicken direkt zum Swag Paypal Ordner in “customs/plugins” schickt. Im Backup legt er das als normalen Ordner namens Paypal ab weswegen dann wohl auch der Pfad nicht gefunden wird. Logisch.
So direkt ist mir das auch noch nicht untergekommen. Hat einer eine Idee woran das liegt bzw. wie man das (manuell) korrigieren kann ?
das könnte etwas fehleranfällig sein über den webFTP. Das klang mir etwas danach das Symlinks nicht korrekt gesetzt bzw. übertragen wurden. Hast du mal versucht die Dateien per Shell zu packen ?
Wie Matthias es schon erwähnt hat. Composer (oder ist es der Shopware Installer, ehrlich gesagt keine Ahnung) arbeiten teils auch mit Symlinks, die auf anderen Systemen teils nicht mehr funktionieren oder erst gar nicht kopiert wurden. FTP ist da vermutlich eine eher schlechtere Wahl als rsync oder tar files.
Bspw. wenn man ein Plugin schon in custom/plugins hat und es dann per composer zusätzlich installiert, dann trägt composer im vendor Verzeichnis lediglich ein Symlink an (wenn ich mich recht erinnere).