Hugoで作成したサイトがS3 + CloudFrontでAccessDeniedと表示される。

CloudFront + S3 のウェブホスティングにHugoで作成したサイトを公開しました。その際にトップサイトのindex.html は表示されるのに、サブディレクトリの中のindex.htmlが表示されず、AccessDeniedとなる事象に出会いました。投稿した各記事が閲覧できない状態です。原因は以下2つでした。

①S3のアクセス設定が 誤っていた
[誤]
“AWS”: “arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity XXXXX”
[正]
“*”

{
“Version”: “2008-10-17”,
“Id”: “PolicyForCloudFrontPrivateContent”,
“Statement”: [
{
“Sid”: “1”,
“Effect”: “Allow”,
“Principal”: {
“AWS”: “*”
},
“Action”: “s3:GetObject”,
“Resource”: “arn:aws:s3:::testsite.com/*”
}
]
}

②CloudFrontのOrigin Domain Nameが間違っていた
[誤]
・testsite.com.s3.amazonaws.com
[正]
・testsite.com.s3-website-ap-northeast-1.amazonaws.com

S3の「Static website hosting」のエンドポイントのURLから「http://」を省いたものを指定する必要があります。

スポンサーリンク
レクタングル大
レクタングル大

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
レクタングル大