für den Umzug auf ein neues System bereite ich grade das Shopware auf dem Zielsystem (ip only, kein fqdn) vor. Der Demoshop lief hier schon erfolgreich. Dann zog ich die DB und die Scripte vom Produktivsystem in das neue System und migrierte alles ordentlich nach Anleitung (db anpassen, Rechte setzen, Shop registieren/lizensieren usw.). Das Backend funktioniert nun auch, aber beim Frontend erscheint immer nur ein Fehler 503.
Meine einzige Vermutung ist, dass das bezahlte dashone Theme sich quer stellt. Dieses ist ja nur für die Produktiv-Domain registiert. Abschalten des “Plugins” hat noch nichts gebracht.
Das Theme einfach zu wechseln funktioniert aber nicht. Beim Klick auf Theme “zuweisen” passiert einfach nichts. Im Insprector ist zu sehen, dass der Aufruf von: http:///backend/theme/assign ebenso ein 503 im Hintergrund bekommt.
Apache ist leer. Aber das Shopware Error log könnte was aufzeigen:
PHP Fatal error: Uncaught exception ‘RuntimeException’ with message 'Unable to create the store directory (/home/phprunner/shopware/var/cache/production_201607131117/html
Die 2 Fehler in der Log im ganzen:
[Mon Jul 18 07:29:32.059580 2016] [:error] [pid 14334] [client 95.90.215.51:54062] PHP Fatal error: Uncaught exception 'RuntimeException' with message 'Unable to create the store directory (/home/phprunner/shopware/var/cache/production_201607131117/html).' in /home/phprunner/shopware/vendor/symfony/http-kernel/HttpCache/Store.php:42\nStack trace:\n#0 /home/phprunner/shopware/engine/Shopware/Components/HttpCache/Store.php(59): Symfony\\Component\\HttpKernel\\HttpCache\\Store->__construct('/home/phprunner...')\n#1 /home/phprunner/shopware/engine/Shopware/Components/HttpCache/AppCache.php(271): Shopware\\Components\\HttpCache\\Store->__construct('/home/phprunner...', Array, true)\n#2 /home/phprunner/shopware/engine/Shopware/Components/HttpCache/AppCache.php(85): Shopware\\Components\\HttpCache\\AppCache->createStore()\n#3 /home/phprunner/shopware/shopware.php(96): Shopware\\Components\\HttpCache\\AppCache->__construct(Object(Shopware\\Kernel), Array)\n#4 {main}\n thrown in /home/phprunner/shopware/vendor/symfony/http-kernel/HttpCache/Store.php on line 42
[Mon Jul 18 07:31:59.820379 2016] [:error] [pid 31240] [client 95.90.215.51:54072] PHP Fatal error: Uncaught exception 'Doctrine\\ORM\\Mapping\\MappingException' with message 'The target-entity Shopware\\Models\\Attribute\\ProductStream cannot be found in 'Shopware\\Models\\ProductStream\\ProductStream#attribute'.' in /home/phprunner/shopware/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/MappingException.php:762\nStack trace:\n#0 /home/phprunner/shopware/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/ClassMetadataInfo.php(1023): Doctrine\\ORM\\Mapping\\MappingException::invalidTargetEntityClass('Shopware\\\\Models...', 'Shopware\\\\Models...', 'attribute')\n#1 /home/phprunner/shopware/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/ClassMetadataFactory.php(272): Doctrine\\ORM\\Mapping\\ClassMetadataInfo->validateAssociations()\n#2 /home/phprunner/shopware/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/ClassMetadataFactory.php(251): Doctrine\\ORM\\Mapping\\ClassMetadataFactory->validateRuntimeMetadata(Object(Doctrine\\ORM\\Mapping\\ClassMetadata), NULL)\n#3 /home/phprunner/shopware/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/A in /home/phprunner/shopware/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/MappingException.php on line 762
hier scheinen die Berechtigungen für das Verzeichnis /var/cache/ nicht zu stimmen. Diese mal auf 775 bzw 776 abändern und eventuell den Benutzer (NGINX z.B.: www-data) anpassen.
Hab grade mal geschaut, die Datanbank Value “element_id” kommt in der Produktiv-DB zwar in der Strucktur vor, erhält aber nie Werte. Anders in der ehemaligen Demoshop-DB, die auch mehrere Einträge dafür hat. Nun lassen sich beide DBs aber schlecht mergen.
Nachtrag: Beim Cache leeren über var/cache/clear_cache.sh scheint es auch Probleme zu geben, denn da kommt folgende Ausgabe:
Clearing caches
WARNING! The target-entity Shopware\Models\Attribute\PropertyOption cannot be found in ‚Shopware\Models\Property\Option#attribute‘. in /home/phprunner/shopware/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/MappingException.php
[Doctrine\ORM\Mapping\MappingException]
The target-entity Shopware\Models\Attribute\PropertyOption cannot be found in ‚Shopware\Mo
dels\Property\Option#attribute‘.
Läuft denn der PHP-Prozeß unter dem Benutzer/der Gruppe www-data? Wenn Du z.B. PHP-FPM oder FastCGI statt mod_php einsetzt, kann das u.U. ein ganz anderer Benutzer bzw. Gruppe sein.
Das Problem hat sich in Luft auf gelöst, nach dem der Umzug einfach nochmal komplett wiederholt wurde. Dieses Mal wurde allerdings das Programm Adminer (PHP) statt mysqldump & phpmyadmin für ex-/import der Datenbank verwendet. Da der Zielserver noch keine Domain hat, wurde nur die IP als Host eingetragen und da sich vorher hinter dem hostnamen noch ein “\n” (kein Ahnung was das soll) befand, wurde dieses jedoch beibehalten. Aus der Zipdatei wurde die .htaccess manuell rausgeholt, da unzip diese scheinbar nicht mit rausgeholt hat.
Danke an alle, die sich den den Kopf mit mir zerbrochen haben.
Danke für den Hinweis. Sorry, das ich mich das etwas unzureichend ausgedrückt hab, denn das es sich dabei um den Zeilenvorschub handelt wusste ich schon und fragte mich eher, was das im hostfeld zu suchen hat. Ich kann mir nicht vorstellen, dass das so gewollt war. Aber es funktioniert ja jetzt auch damit. Dazu muss ich sagen, dasd der „host“-Eintrag im exportieren *.sql file direkt vorgenommen wurde und nicht im adminer (oder phpmyadmin).