一般的なNginx構成ではクロスドメインが可能 サーバー{ 11111 を聞いてください。 server_name ローカルホスト; 場所 ~ /xxx/xx { $request_method = 'OPTIONS'の場合{ 204を返します。 } アクセス制御許可オリジン * のヘッダーを追加します。 add_header アクセス制御許可メソッド 'GET、POST、OPTIONS'; add_header Access-Control-Allow-Headers 'DNT、X-Mx-ReqToken、Keep-Alive、User-Agent、X-Requested-With、If-Modified-Since、Cache-Control、Content-Type、Authorization'; プロキシパス http://1.2.3.4:5678; } } Access-Control-Allow-Origin を '*' として指定します。これは、すべてのクロスドメイン アクセスを許可する最も単純かつ強力な方法です。 クッキーを許可する 一部のシナリオでは、Cookie が必要です。この場合、Nginx は add_header Access-Control-Allow-Credentials 'true'; という文を追加する必要がありますが、このとき、ブラウザは、このパラメータが true の場合、allow origin を '*' に設定できないというエラーを報告します。複数のドメイン名を手動で指定した場合も、ブラウザは、allow origin を複数に設定できないというエラーを報告します。これらは、プロトコル レベルの制限です。 マップの使用 Nginx では、map を使用してカスタム変数を取得できます。簡単な使用方法については、公式ドキュメントを参照してください。上記のシナリオでは、リクエスト内の origin をフィルターし、要件を満たすリクエスト ドメイン名を変数に入れることができます。allow origin を設定すると、この変数を使用して、動的な複数のクロスドメイン ドメイン名を実装できます。 構成例は次のとおりです。 $http_origin $allow_origin をマップします { デフォルト ""; "~^(https?://localhost(:[0-9]+)?)" $1; "~^(https?://127.0.0.1(:[0-9]+)?)" $1; "~^(https?://172.10(.[\d]+){2}(:[0-9]+)?)" $1; "~^(https?://192.168(.[\d]+){2}(:[0-9]+)?)" $1; } サーバー{ 11111 を聞いてください。 server_name ローカルホスト; 場所 ~ /xxx/xx { $request_method = 'OPTIONS'の場合{ 204を返します。 } アクセス制御の許可元ヘッダー $allow_origin を追加します。 add_header アクセス制御許可メソッド 'GET、POST、OPTIONS'; add_header Access-Control-Allow-Headers 'DNT、X-Mx-ReqToken、Keep-Alive、User-Agent、X-Requested-With、If-Modified-Since、Cache-Control、Content-Type、Authorization'; add_header アクセス制御許可資格情報 'true'; プロキシパス http://1.2.3.4:5678; } } 説明: $http_originはNginxの内部変数で、リクエストヘッダーのオリジンを取得するために使用されます。 $allow_originはカスタマイズ可能な変数名です 要約する これで、マップを使用して Nginx を実装し、ドメイン間で複数のドメイン名を許可する方法についてのこの記事は終了です。ドメイン間で複数のドメイン名を許可する Nginx のマップ実装の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM を応援してください。 以下もご興味があるかもしれません:
|
<<: JS配列メソッドsome、every、findの使用に関する詳細
1. 背景日常的なウェブサイトのメンテナンスでは、このような要件に頻繁に遭遇します。特定のクローラー...
<input> はユーザー情報を収集するために使用され、終了ステートメントはありません。...
目次01 YAMLファイルの概要YAML---キー値型YAML---リスト型02 K8Sにおけるマス...
MySQL をインストールした後、初めてmysql -uroot -pを実行したときに、root パ...
プロジェクト要件では、アップロードされたドキュメントの前処理が必要です。ユーザーが doc 形式でド...
ローカル データベースがサーバー データベースに接続されているときに発生する 1045 の問題を解決...
*** ハイパーリンクのスタイル設定の例a:link クリックされる前のハイパーリンクの状態a:vi...
2つのケース: 1. 索引あり 2. 索引なし前提条件:方法: コマンドラインを使用してシミュレート...
データのバックアップと復元パート3の詳細は次のとおりです基本的な概念:バックアップ、現在のデータまた...
まず、MySQL公式サイトからインストールパッケージをダウンロードします。MySQLはオープンソース...
この記事では、MySQL 8.0.20のインストールと設定方法についての詳細なチュートリアルを参考ま...
通常、Linux プログラムを開発する場合、次の 2 つのオプションがあります。 Linux上で直接...
目次sambaをアンインストールしてインストールする新しい共有パスを作成し、権限を設定するSamba...
成果を達成する html <h2>CSS3 タイムライン</h2> <...
私は頻繁にシステムをインストールするので、インストールのたびにいくつかのソフトウェアを再インストール...