ヘッダーを使用して複数のクロスドメインを許可する方法はありますかAccess-Control-Allow-Origin
?
については承知しています*
が、あまりにもオープンです。本当に許可したいのは、ほんの数個のドメインだけです。
たとえば、次のようになります。
Access-Control-Allow-Origin: http://domain1.example, http://domain2.example
上記のコードを試してみましたが、Firefox では動作しないようです。
複数のドメインを指定することは可能ですか、それとも 1 つのドメインだけに限定されますか?
ベストアンサー1
推奨される方法は、サーバーにクライアントからの Origin ヘッダーを読み取らせ、それを許可したいドメインのリストと比較し、一致する場合は、ヘッダーの値を応答のヘッダーOrigin
としてクライアントにエコーバックすることのようですAccess-Control-Allow-Origin
。
次のように.htaccess
すればできます:
# ----------------------------------------------------------------------
# Allow loading of external fonts
# ----------------------------------------------------------------------
<FilesMatch "\.(ttf|otf|eot|woff|woff2)$">
<IfModule mod_headers.c>
SetEnvIf Origin "http(s)?://(www\.)?(google.com|staging.google.com|development.google.com|otherdomain.example|dev02.otherdomain.example)$" AccessControlAllowOrigin=$0
Header add Access-Control-Allow-Origin %{AccessControlAllowOrigin}e env=AccessControlAllowOrigin
Header merge Vary Origin
</IfModule>
</FilesMatch>