まず、クロスドメインとは何かについて話しましょう:
同一オリジン ポリシーは、同じソースからロードされたドキュメントまたはスクリプトがどのようにアクセスできるかを制限します。と対話する 別のソースからのリソースと対話します。これは、潜在的に悪意のあるファイルを隔離するための重要なセキュリティ メカニズムです。通常、異なるソース間の読み取り操作は許可されません。
次に、同一オリジンとは何かについて説明します。
2 つのページのプロトコル、ポート (指定されている場合)、およびドメイン名が同じである場合、 2 つのページは同じ出所を持っています。同じ出典です。
クロスドメインの問題を解決する nginx の原理の分析:
例:
フロントエンド サーバーのドメイン名は次のとおりです。 fe.server.com
バックエンド サービスのドメイン名は次のとおりです: dev.server.com
ここで、fe.server から dev.server.com にリクエストを送信します。 com では、必ずクロスドメインで表示されます。
ここで必要なのは、nginx サーバーを起動し、server_name を fe.server.com に設定し、フロントエンドのクロスドメイン要求をインターセプトするために対応する場所を設定し、最後に要求をプロキシして開発に戻すだけです。サーバー.com。次の構成に示すように:
server { listen 80; server_name fe.server.com; location / { proxy_pass dev.server.com; } }
これにより、ブラウザーの同一生成元ポリシーを完全にバイパスできます。
fe.server.com から nginx の fe.server.com へのアクセスは同一オリジン アクセスであり、nginx によってサーバーに転送されたリクエストはブラウザの同一オリジン ポリシーをトリガーしません。
推奨チュートリアル: nginx チュートリアル
以上がクロスドメイン問題を解決するnginxの原理の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。