私は、Cloudfrontの起源としてS3に依存している多くのサイトで問題を抱えてきました。しかし、複数のドメイン(グローバル*
の代わりに)を許可することに問題があります。AWS:S3 CORS設定で複数のドメインを許可するにはどうすればよいですか?
私は文書here(最初の設定)に従っています。そして、いくつかの他のランダムなSOやフォーラムの回答がこことそこに見つかりました(第2の設定)
助けていただければ幸いです。
私は、次の両方のように見えるセットアップCORSルールがあります。
:私はhttps://example.com
以外のすべてのサイト
上のフォントの原点エラーを取得しておく <?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>https://example.com</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>HEAD</AllowedMethod>
<AllowedMethod>DELETE</AllowedMethod>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
<CORSRule>
<AllowedOrigin>http://example.com</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
<CORSRule>
<AllowedOrigin>https://staging.example.com</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
<CORSRule>
<AllowedOrigin>http://example.dev</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>
と
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>https://example.com</AllowedOrigin>
<AllowedOrigin>http://example.com</AllowedOrigin>
<AllowedOrigin>https://staging.example.com</AllowedOrigin>
<AllowedOrigin>http://example.dev</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>HEAD</AllowedMethod>
<AllowedMethod>DELETE</AllowedMethod>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
</CORSConfiguration>
を
原点 'http://CLOUDFRONTURL'のフォントがクロスソースリソース共有ポリシーによって読み込まれないようにブロックされています。要求されたリソースに 'Access-Control-Allow-Origin'ヘッダーがありません。 Origin 'http://example.dev'はアクセスできません。
と
原点からフォント「http://CLOUDFRONTURLは」クロスオリジンリソースの共有ポリシーによってロードからブロックされています:「アクセス制御 - 許可 - 起源」ヘッダーはその値「https://example.com」を持っています供給元と同じではありません。 Origin 'http://example.dev'はアクセスできません。だけではなく、パス -
CloudFrontディストリビューションは 'Origin'リクエストヘッダーをホワイトリストに登録しますか? –
@ Michael-sqlbot私はそれを確認する場所がわかりません。原点を編集しても、ホワイトリストの原点リクエストヘッダーに関連するものは得られません。 – Dez
これは、原点の設定ではなく、キャッシュの動作の設定です。 http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html#header-caching-web –