「アマゾン ウェブ サービスで静的ウェブサイトをホストする」の記事を参考にS3で静的ウェブサイトホスティングの設定をする。今回はRoute 53に登録してある独自ドメインを使用したいので、バケット名はドメイン名と同じものにするのがポイント。
例として、Route 53にはあらかじめ独自ドメイン「www.example.com」が登録されていることとする。
S3で静的ウェブサイトホスティングの設定をする
-
バケットポリシーを編集し、誰でもこのバケットの内容を閲覧できるように設定する(「ステップ3」参考)
-
ウェブサイトのホスティングを有効にする
「インデックスドキュメント」はエンドポイントのURLにアクセスした際に表示されるファイル、「エラードキュメント」は存在しないファイルのURLにアクセスした際等に表示されるファイル
-
エンドポイントのURLにアクセスすると、index.htmlの内容が表示される
Route 53に登録してあるドメイン名を関連付ける
-
Route 53で「Hosted Zones」から関連付けを行うドメイン名を選択する
-
「Create Record Set」ボタンをクリックし、Aレコードを登録する
「ステップ5」の説明では、「 [Alias Target] をクリックします。リストから www サブドメインのウェブサイトエンドポイント(www.example.com)を選択します。」のように記載があるが、実際にリストに表示されるのは(www.example.com)s3-website-ap-northeast-1.amazonaws.com
のように長いもの。ステップ5の説明に貼ってあるキャプチャーのように「Alias Target」に「www.example.com」と入力するとエラーで登録できないので注意。
(S3で静的ウェブサイトのホスティングを有効にしたバケットを登録すると以下のように「Alias Target」のプルダウンに表示されるようになる)
まとめ
- S3のバケット名はドメイン名と同じものにする
- Route 53でAレコードのAlias TargetにS3のエンドポイントURLを指定する