AWS S3で新しいバケットを作成しました。いくつかの静的ファイルをホストしたいのですが、それらがすべてそこにない場合は、私のメインサーバにリダイレクトしてください。シンプルなようですが、私は運がない指示に従ってきました。AWS S3リダイレクトが機能しない
バケツでは、誰も閲覧許可を与えました。私はバケットポリシーを追加しました
:ホスティング静的なウェブサイト上
{
"Version": "2012-10-17",
"Id": "Policy999999999",
"Statement": [
{
"Sid": "Stmt9999999999",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::mybucket/*"
}
]
}
を、私はそれを有効にして、簡単なのindex.htmとerror.htmページを作成した(私はそれらを必要としないことが、場合ましたそれは必須です)。そして、これらのリダイレクト規則を追加しました:
<RoutingRules>
<RoutingRule>
<Condition>
<HttpErrorCodeReturnedEquals>403</HttpErrorCodeReturnedEquals>
</Condition>
<Redirect>
<Protocol>http</Protocol>
<HostName>www.mydomain.com</HostName>
<ReplaceKeyPrefixWith>/</ReplaceKeyPrefixWith>
</Redirect>
</RoutingRule>
</RoutingRules>
(それはリストの権限を持っていませんが、それは403/404のいずれかのバリエーションで作業し、リストの権限のかどうかを持っていない場合は明らかにあなたが404 403をする必要はありません)
私はちょうど得る(存在するものは罰金)が存在しないバケット上のURLにアクセスしてください:
<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>9DD57C7132E76D65</RequestId>
<HostId>
I15odykUdMnGCC+hQfb1pfsnt+gkfGVxuD2sy5PrxrX16P8Njpy3yQiLLH30evTkdOOAl28HA9M=
</HostId>
</Error>
(またはNoSuchKeyリストの権限が上にある場合)
ヘルプ!