AWS S3で静的ファイルを独自ドメインで配信するまで 【CloudFlare】
前提
- ドメイン名は sample.com と仮定する。
- S3に画像ファイルを置いて、
image.sample.com
というドメインでアクセスできるようにする。 - S3はそれだけだと遅いので、CDNを利用する(CloudFlare)
手順
image.sample.com
というバケット名でバケットを作成。- アクセス許可タブを開いて、バケットポリシーを編集をクリック
- 以下をペースト
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowPublicRead", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::image.sample.com/*" } ] }
- [Static website hosting] タブをクリック
- [このバケットを使用してウェブサイトをホストする] をクリック
※このときにエンドポイントもメモしておきます。(ここでは file.〜.s3〜 となっていますがこの手順通りにやっていれば image.sample.com.s3〜となっていると思います。)
- インデックスドキュメントをindex.htmlなどに設定(このファイルはなくても大丈夫)
- ドメインサービスの管理画面からDNSを CouldFlareのものにする(あとででもよい)
- CloudFlare 側で
image.sample.com
というドメインをCNAME のname に設定、hostname に 先程メモしたエンドポイントを入力