1

CORS を複数のドメインで機能させようとしています。

    Header add Access-Control-Allow-Origin "http://localhost, http://multiplay.io"

ただし、ほとんどのブラウザは 1 つのドメインしかサポートしていないようです。解決策は、着信ドメインごとにヘッダーを設定することだと言われました。

.htaccess ファイルを使用してこれを行うにはどうすればよいですか?

4

1 に答える 1

4

交互に使用したい値が 2 つだけの場合は、 を使用SetEnvIfして 2 つを区別できます。

SetEnvIf Referer "^http://localhost/" is_localhost
Header add Access-Control-Allow-Origin http://localhost env=is_localhost
Header add Access-Control-Allow-Origin http://multiplay.io env!=is_localhost

より洗練された解決策があるかもしれませんが、上記の (テストされていない) ディレクティブのようなものが機能するはずです。

(Referer ヘッダーを偽造するのは簡単なことなので、Referer ヘッダーをほとんど何にでも使用する場合は、偽造された Referer ヘッダーのセキュリティへの影響に注意してください。)

さらに、すべてのホストを許可するだけの場合は、*複数のホスト名をリストする代わりに指定できます。

Header add Access-Control-Allow-Origin *

しかし、あなたはすでにそれを知っていて、それほど寛容になりたくないと思います.

于 2013-03-18T05:01:18.197 に答える