Heim > Artikel > Web-Frontend > Warum wird der Zugriff von Origin \'https://example.com\' blockiert, obwohl ich \'https://example.com/\' zugelassen habe?
Beim Versuch, ursprungsübergreifend auf eine Ressource zuzugreifen, stoßen Entwickler häufig auf Probleme im Zusammenhang mit dem Access-Control-Allow-Origin-Header. Der Schlüssel zur Lösung dieser Probleme liegt im Verständnis der genauen Bedeutung von „Ursprung“ im Kontext des CORS-Protokolls.
In CORS ist ein Ursprung eine Kombination aus Schema, Host (Domäne) und Port. Wichtig ist, dass es keinen Pfad enthält. Daher gelten die folgenden zwei Ursprünge als unterschiedlich:
Das Problem in diesem speziellen Fall ergibt sich aus einem Missverständnis der Definition des Ursprungs. Insbesondere ist der abschließende Schrägstrich im zulässigen Ursprung gemäß den CORS-Protokollspezifikationen nicht zulässig. Infolgedessen stimmt der vom Browser gesendete Ursprungsheader (ohne den abschließenden Schrägstrich) nicht mit dem auf dem Server konfigurierten zulässigen Ursprung überein.
Um dieses Problem zu beheben, entfernen Sie einfach den abschließenden Schrägstrich aus dem zulässigen Ursprungswert in Ihrer CORS-Konfiguration. In diesem Fall wäre der korrekte zulässige Ursprung:
Mit dieser Änderung der Ursprungsheader des Browsers stimmt mit dem zulässigen Ursprung überein und CORS wird erfolgreich zugelassen.
Das obige ist der detaillierte Inhalt vonWarum wird der Zugriff von Origin \'https://example.com\' blockiert, obwohl ich \'https://example.com/\' zugelassen habe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!