Die APP_URL erlaubt externen Apps, auf Shopware self-hosted zuzugreifen. Externe Apps sind zum Beispiel Erweiterungen, die Du über den Shopware Store erworben hast. Bei einer self-hosted Installation, also dem Einsatz von Shopware auf einem Server, bei dem Du für die Einrichtung und Konfiguration Deines Webspaces selber verantwortlich bist, verwenden die installierten Apps die APP_URL zum Austausch von Informationen mit Shopware.
Solche Informationen können beispielsweise sein, ob der Hersteller App-Updates bereitstellt und ob diese mit der bei Dir installierten Shopware Version kompatibel sind.
Die APP_URL wird unabhängig von eingetragenen Account- / Lizenzdomain für diese Kommunikation verwendet. Wenn Du Deinen Shop auf eine andere Domain umziehst, kann die Lizenzdomain im Admin von der APP_URL abweichen. Eine Auswirkung davon ist, dass Du bei der Anmeldung eine Hinweismeldung bekommst "Domain-Änderung wurde festgestellt". Außerdem können bei der Nutzung Deiner Apps Fehler auftreten, wenn die APP_URL nicht erreichbar ist oder auf einen Server mit veralteten Informationen verweisen. Daher prüfe die angegebene APP_URL, wenn Du Deinen Shop umziehst.
Die APP-URL ist eine Konfigurationsvariable, die aus der Datei .env ausgelesen wird. Die Datei befindet sich immer im Root Verzeichnis Deiner Shopware Installation. Damit Du Sie einsehen und bearbeiten kannst, benötigst Du Zugriff per FTP oder SSH. Einige Hoster haben dafür einen Aufruf in deren Verwaltungskonsole.
Ab der Shopware Version 6.5.0.0 müssen die beschriebenen Änderungen in der .env.local Datei vorgenommen werden, anstelle der .env Datei.
Bitte beachte: Die Datei .env ist eine versteckte Datei. Wenn Sie Dir nicht angezeigt wird, musst Du die Anzeige versteckter Dateien in Deinem Tool aktivieren, mit dem Du auf das Shopware Verzeichnis zugreifst.
Wie das gemacht wird, erfährst Du in der Bedienungsanleitung der von Dir eingesetzten Software oder bei Deinem Hoster.
Die Datei kann mit jedem Texteditor angesehen und bearbeitet werden. Hier siehst Du einen beispielhaften gekürzten Aufbau der Datei:
APP_ENV="prod"
APP_URL="https://DEINE-DOMAIN"
DATABASE_URL="mysql://DEINE-DATENBANK"
SHOPWARE_ES_HOSTS="elasticsearch:9200"
SHOPWARE_ES_ENABLED="0"
SHOPWARE_ES_INDEXING_ENABLED="0"
SHOPWARE_ES_INDEX_PREFIX="sw"
SHOPWARE_HTTP_CACHE_ENABLED="1"
SHOPWARE_HTTP_DEFAULT_TTL="7200"
...
Die APP_URL ist hier in der zweiten Zeile angegeben.
Damit es zu keinem Fehler kommt, sollten folgende Punkte beachtet werden:
Shopware muss wissen, unter welcher Domain der Shop für externe Dienste erreichbar ist. Die gewünschte Domäne hinterlegst Du während der Grundeinrichtung. Diese Domäne kann später nicht einfach in der Administration geändert werden. Standardmäßig ist die Domäne, die hier hinterlegt wird, die Domäne des ersten Verkaufskanals.
Ob Deine Domain nach einer Änderung erreichbar ist, kann Du rudimentär prüfen, indem Du die neue URL als Adresse in Deinem Browser eingibst. Tritt ein Fehler auf, wenn Du bestätigst oder die URL wird während des Ladens geändert, hast Du nicht die korrekte URL verwendet. Bei einigen Browsern wird standardmäßig verborgen welches Protokoll eingesetzt wird (http:, https:), meist wird http: durch ein offenes Schloss dargestellt. Alternativ klicke in die Adressleiste und drücke die Taste [pos1] auf Deiner Tastatur. Damit erkennst die komplette URL.
Sollte Dein Shop bereits mehrere Domains in Deinem Verkaufskanal nutzen, dann solltest Du eine Domäne davon als APP_URL verwenden. Hierüber werden externe Systeme dann standardmäßig mit Deinem Shop kommunizieren.
Deine Domänen findest Du in Deinen Verkaufskanälen.
Verschiebst Du Deinen Shop zu einer neuen Domäne oder hast Deinen Shop innerhalb einer Staging Umgebung mit einer anderen Domäne erstellt, so darfst Du nicht vergessen, auch die Konfiguration entsprechend anzupassen, da es ansonsten zu Probleme kommen wird. Insbesondere, wenn der Shop nachträglich auf https umgestellt wird oder wenn Konfigurationsdateien kopiert und eingefügt wurden.
Ob die Lizenzdomain korrekt eingetragen ist prüfst Du in Einstellungen > System > Shopware Account. Hier findest Du weitere Erläuterungen dazu.
Die Umgebungsvariable "APP_URL" muss so konfiguriert sein, dass sie auf die Domäne zeigt, unter der der Shop von außen erreichbar ist. Eine .env Datei im Stammverzeichnis sollte mit der Zeile "APP_URL={domain}" (z.B. APP_URL=https://my-shop.com) beginnen bzw. kann entsprechend bei Änderungen angepasst werden. Achte darauf, dass die Domain genau so eingetragen wird, wie Sie auch erreichbar ist. Wenn Du https://... nutzt, darf in der APP_URL nicht http://... stehen. Wenn Dein Shop unter my-shop.com aufgerufen wird, gib nicht www.my-shop.com an.
Im Produktiv-Modus Deines Shop, überprüft Shopware automatisch, ob die konfigurierte APP_URL erreicht werden kann. Falls nicht, wird eine Warnmeldung angezeigt. Falls die APP_URL richtig konfiguriert ist, aber dennoch nicht funktioniert, kannst Du folgendes tun:
Du kannst in der .env die Variable auf APP_URL_CHECK_DISABLED=1 stellen. Wenn es einen solchen Eintrag nicht gibt, kopiere einfach das hier genannte Muster und speichere es in Datei .env. Wichtig ab der Version 6.5 heißt die Datei .env.local.
Dies kann dazu führen, das Apps nicht funktionieren. In diesem Fall ist es notwendig, dass die HTTP-Kommunikation zwischen dem Shop und dem Host erlaubt ist