Installationsfehler: Symfony Service-DB dependency

Hallo alle zusammen, ich habe Shopware installiert. Nachdem ich die Installation agebrochen hatte, habe ich sie neugestartet. Beim ersten Mal kam folgende Meldung: — " \nNotice: session_start() [function.session-start]: ps_files_cleanup_dir: opendir(/var/lib/php5) failed: Permission denied (13) in /hp/co/aa/dj/www/install/src/app.php on line 26 \n{„valid“:true,„offset“:1100,„totalCount“:2106,„success“:true}" — Nachdem ich Datenbank und Verzeichnisstruktur komplett neu angelegt habe, habe ich mit dem Support des Hostinganbieters gesprochen. In Absprache mit dem Support habe ich wie unter https://3c.gmx.net/mail/client/dereferr … ni-garbage beschrieben eine .user.ini angelegt und dort session.gc_probability=0 eingetragen. Dadurch verschwand die obige Fehlermeldung und ich konnte die Installation abschließen. Allerdings kommt folgende Fehlermeldung im Frontend und dem Backend: — Fatal error: Uncaught exception ‚Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException‘ with message ‚The service „db“ has a dependency on a non-existent parameter „example!“.‘ in /hp/co/aa/dj/www/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php:106 Stack trace: #0 /hp/co/aa/dj/www/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php(248): Symfony\Component\DependencyInjection\ParameterBag\ParameterBag->get(‚example!‘) #1 [internal function]: Symfony\Component\DependencyInjection\ParameterBag{closure}(Array) #2 /hp/co/aa/dj/www/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php(258): preg_replace_callback(’/%%|%([^%\s]+)%…’, Object(Closure), ‚example%…‘) #3 /hp/co/aa/dj/www/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php(203): Symfony\Component\DependencyInjection\ParameterBag\Par in /hp/co/aa/dj/www/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php on line 106 — Folgende Aussage kommt mir besonders wichtig vor: 'The service „db“ has a dependency on a non-existent parameter "aviqys! Ist damit meine MySQL-DB oder eine spezielle Symfony-DB in Dateiform gemeint? Was hat es mit dem Parameter aviqys auf sich? LG

Ich habe es gerade mit der Vorgängerversion 4.1.4 probiert und hier geht alles. Mit der Version 4.2.1 kam es zu Fehlern. Ich habe gelesen, dass bei der neuen Version viel an Symfony gemacht wurde. Könnte das ein bekannter Fehler sein, der durch das nächste Update behoben wird?

Eröffnet man bei solchen Fehlern immer direkt ein Ticket oder ist das Forum eine bessere Anlaufstelle?

Hallo, ich vermute, dass dein DB-Benutzername und DB-Passwort in der config.php noch von Prozent-Zeichen umschlossen sind: return array( 'db' =\> array( 'username' =\> '%deinuser%', 'password' =\> '%deinpassword%', 'dbname' =\> 'dbname', 'host' =\> 'localhost' ), ); Wenn dies zutrifft ändere es bitte folgenermaßen: return array( 'db' =\> array( 'username' =\> 'deinuser', 'password' =\> 'deinpassword', 'dbname' =\> 'deinuser', 'host' =\> 'localhost' ), ); Viele Grüße, Benjamin Cremer :shopware:

1 „Gefällt mir“

Genial, ich habe mir gerade deinen Beitrag nochmal angeschaut und das überprüft. Dein Ansatz hat in die richtige Richtung geführt: In meinem Passwort waren zwei %-Zeichen. Das hat Shopware als Parameter interpretiert und einen Fehler erzeugt :slight_smile: Habe direkt ein Ticket erstellt, weil %-Zeichen können ja immer mal im Passwort sein… Wirklich genial und danke nochmal für den Hinweis!

1 „Gefällt mir“

Hallo, Hier nochmal der direkte Link zum Ticket: http://jira.shopware.de/?ticket=SW-8547 Wenn Ihr davon betroffen seid einfach dieses Ticket Voten. Workaround: Die Configuration wird durch den SymfonyDI-Container geparsed, dabei ist das %-Zeichen der Platzhalter für Parameter. Um Trotzdem %-Zeichen verwenden zu können muss dies durch ein zweites %-Zeichen escaped werden. return array( 'db' =\> array( 'username' =\> 'meinuser', 'password' =\> 'mein%password', 'dbname' =\> 'dbname', 'host' =\> 'localhost' ), ); Escaped: return array( 'db' =\> array( 'username' =\> 'meinuser', 'password' =\> 'mein%%password', 'dbname' =\> 'dbname', 'host' =\> 'localhost' ), ); Viele Grüße, Benjamin Cremer :shopware: