Protokoll https bzw. http in der APP_URL in der .env?

Hallo Zusammen,

 

Bei einem Kundenshop hatten wir das Problem, dass die API nicht korrekt funktioniert hat.

Konkret gab es beim Versuch Daten über die API mithilfe eines Plugins zu übertragen folgenden Fehler beim Abruf des Authentifizierungstokens:

[ERROR] Status Code: 405
         Title: Method Not Allowed
         Detail: No route found for "GET /api/oauth/token": Method Not Allowed
         (Allow: POST)

Es war jedoch über folgende Doku (Shopware 6: Working with the Rest-API and an HTTP Client) gewährleistet, dass das Plugin den Token IMMER per POST und nie per GET abfragt.

Nach längerer Recherche konnte ich das Problem lösen:

Grund war folgender: In der .env Datei stand

APP_URL=http://shopdomain.de

Der Shop läuft aber über HTTPS. Damit kam die API offenbar nicht klar.
Die API bzw. Datenübertragung ging erst wieder mit

APP_URL=https://shopdomain.de

Daher allgemein die Frage an Shopware oder wer es beantworten kann: Wie muss die APP_URL aussehen? ist HTTPS zwingend erforderlich, falls es eine HTTPS-Domain gibt?

Ohne Protokoll in der APP_URL scheint es nicht zu gehen (APP_URL=shopdomain.de wirft ebenfalls einen Konsolenfehler)

Viele Grüße Dennis

Sollte sonst noch jemand auf das Problem stoßen, kann es auch sein, dass ein Apache Webserver Modul „allowmethods“ fehlt.

War auf jeden Fall bei einem unserer Projekte der Fall.