da ich aus unterschiedlichen Gründen shopware 6.6.6.1 schon mehrer Male neu aufgesetzt habe, hierzu eine Frage:
ich setzte im nginx das root auf /var/www/shop.meinedomain.de
ich lege eine leere Datenbank in der mariadb an: „shopdb“
ich erstelle eine Datenbankbenutzer der alle rechte auf die „shopdb“ hat
ich gebe im browser /shop.meinedomain.de/shopware-installer.phar.php ein
Die Istallation von shopware 6 startet
Die Dateien werden im Hintergrund auf den Server heruntergeladen
Die Installation bricht ab weil das Installationsprogramm /var/www/shop.meinedomain.de/public/install sucht und nicht findet
im Installtionsscreen stand ich solle root auf /var/www/shop.meinedomain.de/public ändern
Ich ändere das und starte nginx neu
Ich gebe /shop.meinedomain.de/ ein und die Installation läuft weiter, Datenbank wird installiert und und und
Meine Frage hierzu
Der erste Part der Installation sollte ja eigentlich sauber enden und nicht einfach „abbrechen“.
Weshalb ist das nicht so?
Mache ich irgendeinen Fehler?
Sollte nicht der Aufruf /var/www/shop.meinedomain.de/public/install sauber funktionieren?
Gruß, Ralf.
Also mir ist es schon zwei, drei Mal passiert, das ich das Ändern auf public mittendrin vergessen hab (find ich eh suboptimal gelöst) und ich konnte die Installation trotzdem problemlos beenden. Verwende allerdings meist den Apache, weiß nicht, ob das eine Rolle spielt (wüsste zwar nicht warum, aber wer weiß…).
@SCOOPEX, ich gehe davon aus, dass die nginx config passt. Ich habe mich an die Vorgaben, das Beispiel auf der Shopware „requirements“ Seite gehalten. Prinzipiell funktioniert ja alles, bis auf die beschriebenen Fehler.
Außerdem würde ich dann nicht verstehen wie ein Fehler in der nginx config solchen Fehler in Shopware verursachen könnte.
Du hattest ja erwähnt, dass install nicht gefunden wird:
Die shopware-installer.phar.php Datei lädt lediglich die aktuelle Shopware Version herunter. Für die Installation muss nach dem Download der Einstiegspunkt auf public gesetzt werden und für die Installation rufst Du dann halt Deine Domain auf.
In der vorgenannten nginx Config sind entsprechend Direktiven enthalten, damit install gefunden wird:
Fehlt das bei Dir, wird das die Ursache sein … deshalb: besser nochmal die nginx Config prüfen (oder Apache verwenden - ist einfacher, da .htaccess unterstützt wird).
Nur beim ersten Teil der Installation ist ja der letzte Punkt auf der linken Seite „Abschluss“. Leider bricht der Vorgang vorher ab.
Ich persönlich würde erwarten, dass dieser Punkt angezeigt wird und dann ein Hinweis angezeigt wird, der sagt: „ändere jetzt dein root auf …/public und rufe dann shop.meinedomain.de auf.“
Diese Anzeige gibt es bei mir aber nicht…
Die Config sieht nach einem ziemlichen Durcheinander aus. Beachte, dass die Direktiven der Reihe nach verarbeitet werden - findet nginx also einen „Treffer“, der passen könnte, werden später folgende Direktiven ignoriert.
Als erstes würde ich die Direktiven für install/update so wie in der Doku beschrieben nach oben setzen und
root __DOCUMENT_ROOT__/public;
fehlt komplett.
Und auch nochmal der Hinweis, evtl. Apache zu verwenden anstelle von nginx.
nginx ist deutlich komplexer mit den Direktiven als Apache mit .htaccess. Auch ist nginx nicht zwingend „schneller“ als Apache (allenfalls bei vielen hundert gleichzeitigen Anfragen, da nginx weniger Arbeitsspeicher benötigt).