回答:
ええ、はい、nginxは同じ名前のヘッダーを結合していますが、HTTP仕様に従って結合しています。 セクション4.2を参照してください。
ヘッダー:
Access-Control-Allow-Origin: http://dev.anuary.com, https://dev.anuary.com
HTTP / 1.1仕様によれば、機能的には次と同等です。
Access-Control-Allow-Origin: http://dev.anuary.com
Access-Control-Allow-Origin: https://dev.anuary.com
あるフォーマットを読み取ることができ、他のフォーマットを読み取れないシステムまたはアプリケーションがある場合、それは問題です。nginxはそれを正しく行っています。
編集:
Mozillaのドキュメントは 1つのしかできることを述べてAccess-Control-Allow-Origin
ヘッダー。
そのフォーマット(ここを参照)は、スペースで区切られた起源のリストである必要があります。
add_header Access-Control-Allow-Origin "http://dev.anuary.com https://dev.anuary.com";
ただし、実際には、青色のヘッダーを生成するのではなく、クライアントから提供されたヘッダーをエコーすることになっていますOrigin
。これはおそらくより適切です:
if ($http_origin ~* "^https?://dev\.anuary\.com$" ) {
add_header Access-Control-Allow-Origin $http_origin;
}
http://example.com
、そしてhttp://localhost:3000
)に拡張してくれませんか?
動的ドメインでnginx CORSを構成するには、この投稿をご覧ください:https : //qa.lsproc.com/post/access-control-allow-origin-multiple-origin-domains