Hi,
ich - beruflicher Vollzeit-Linux-Admin - habe hier von einer Agentur einen Shopware 6 System aufgesetzt bekommen, dass unter einer eigenständigen Domain sauber funktioniert.
Hinter einem Reverse-Proxy(derzeit Apache, mit NGINX aber gleiches Phänomen) funktioniert der Shop aber nicht.
Alle identifizierenden Angaben sind verfremdet. Die Doppelslashes in den URLs habe ich weggelassen, weil mir als neuer Nutzer nicht erlaubt wird, mehr als 2 Links zu posten.
Der Shop soll in die folgende Webseite eingebunden werden:
https:www.gartenzwerge.de/shop
Das ist das Apache-Konfigurationsfragment bzgl. der RevProxy-Konfiguration:
SSLProxyEngine On
<Location /shop/>
ProxyPass https:shop.gartenzwerge.de
ProxyPassReverse https:shop.gartenzwerge.de
</Location>
Wenn ich jetzt den Shop via Browser(oder Kommandozeile via wget) aufrufe, dann bekomme ich so etwas wie eine Index-Seite, bei der aber alle Inhaltselemente ohne den Teilpfad /shop/ generiert wurden.
Beispiel:
https:www.gartenzwerge.de/media/03/17/23/1650983199/gartenzwerge-logo-weiss.png
Richtig wäre:
https:www.gartenzwerge.de/shop/media/03/17/23/1650983199/gartenzwerge-logo-weiss.png
Letztere Grafik ist so korrekt abrufbar über den Reverse-Proxy. Erstere natürlich nicht, weil nur /shop/.* an das Shopware-System weitergeleitet wird.
Der Channel, bzw. die Basis-URL ist eingestellt auf: https:www.gartenzwerge.de/shop.
Wir (der Agenturmitarbeiter und ich) haben testweise auch schon mal die Basis-URL auf dem Shopware-System auf https:shop.gartenzwerge.de/shop/ umgestellt und entsprechend das Apache-ProxyPass auf „https:shop.gartenzwerge.de/shop/“. Gleiches Phänomen. Das „/shop“ ist nicht in den generierten Links enthalten. Wenn ich https:shop.gartenzwerge.de/shop/ direkt aufrufe funktioniert der Shop.
Für mich sieht das nach einem Fehler in der Shopware-Konfiguration aus. Oder habe ich an der Reverse-Proxy-Konfiguration etwas falsch gemacht? Was könnte das sein?
Gibt es irgendwo noch weitere Hilfreiche Hinweise für den Betrieb von Shopware hinter einem Reverse-Proxy?
Nachtrag: Das hier: How to Configure Symfony to Work behind a Load Balancer or a Reverse Proxy (Symfony Docs) werde ich wohl noch konfigurieren müssen, aber wenn ich das richtig verstanden habe, geht das nur um das Logging. Oder stört das auch bei der Authentifizierung(weil alle remote ips ja nun der Proxy sind)?