#今回の目的
- AWSのアカウントを使ってウェブサイト公開をしたい
- Amazon s3で静的ウェブサイトを公開したい
- 独自ドメインをRoute 53で取得して公開したい
#AWSのメリット
Route 53もs3もAWSのサービスです。
- AWSではRoute 53のドメインのみサブドメインなしの利用が可能
- s3のアカウントを作成すると、最初の1年間は無料利用枠が自動的に適応される(ただしRoute 53での独自ドメイン取得は適用外)
- ドメインにこだわりがなければ、s3の料金だけで(初年度無料利用枠あり)静的ウェブサイト公開可能
- ウェブサイト公開、独自ドメイン反映が早い
など
#手順1:Route 53で独自ドメイン購入(取得)
まずは独自ドメインを取得(Route 53では購入する必要があります)してから、公開作業に入ります。
※ 今回はあくまでも全てAWSのサービスのみで独自ドメインも取得、静的ウェブサイト公開を目的としていますが、Route 53以外で独自ドメインを取得する場合でも、独自ドメイン取得は先に済ませる必要があります。理由はウェブサイト公開手順(s3使用時)に書きます。
-
AWSのアカウントにログイン
-
独自ドメインを取得する。以下画像の
Register Domain
で希望するドメイン名が使用可能かチェック。.com
はAWSでは$12するが、差し障りがなければ.de
や.uk
は他のドメインよりは安く、$9。(2017年7月現在)
-
希望するドメイン名の右横の
Add to cart
をクリック。右横のShopping Cart
に選んだドメイン名と価格が表示されるので、確認したらContinue
をクリック
-
Terms and Conditions
でチェックを入れ、Complete Purchase
をクリック -
Route 53のConsole画面に戻ると
Alerts
でドメインが申請中であることが確認できる。Status
が画像のようにDomain registration successful
となっていれば反映されたということになる
反映されたらAWSからメールが届きます。私の場合は.de
でドメイン取得を申請しましたが、1時間未満で反映されました。
#手順2:s3で静的ウェブサイトを公開する設定をする
-
Home Console画面から
s3
と検索 -
Bucket Name
は、必ずRoute 53で取得した独自ドメインにする。理由は、Bucket名がドメイン名と異なる場合、ウェブサイト公開に反映されないため。Region
は日本人向けならTokyo
。
※kaki-kukeko.com
なら.com
まで記入
-
Review
の項目までNext
をクリックしてcreate bucket
をクリック -
新しく追加されたBucketをクリックして開く
-
Use this bucket to host a website
にチェックを入れ、以下の図のハイライトの箇所にindex.html
と記入してsave
-
Permissions
タブからBucket policy
を開き、以下画像でハイライトしてある箇所にJSONをコピペ(画像下のJSONをコピペしてください)
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AddPerm",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::ここにドメイン名と同じBucket名*"
}
]
}
-
Overview
タブに戻り、UPload
をクリックしてindex.html
のファイルをアップロード -
Properties
タブ→Static website hosting
より上部にあるEndpoint
のURLでブラウザ表示確認
#手順3:AレコードAliasを登録して、独自ドメインをアクティベートする
文字通り、先ほどRoute 53で購入した独自ドメインからアクセスできるようにします。
-
Route 53のコンソールから
Hosted zones
をクリック -
Name
にサブドメイン名を設定したい場合はwww
など記入(独自ドメインでアクセスしたときに、ドメイン名と同じBucket名が見当たりませんとブラウザで表示される場合はここを空白にして、サブドメインなしにすると表示される) -
Alias
はYes
でEnter Target Name
をクリックして画像でハイライトになっているように、s3で公開するBucketのエンドポイントを選択
-
Create
をクリックして、独自ドメインでブラウザに反映されているか確認できれば成功
参考記事: https://aws.amazon.com/jp/getting-started/tutorials/get-a-domain/
備考
Dot TKでは独自ドメインが、ドメインによっては無料で取得できます。ただ、アクセス数が一定数を下回る場合は削除されたり、.com
などメジャーなドメインは有料だったりします。とりあえず静的ウェブサイトをホストしたい場合はs3だけで終わらせると、最初の一年は無料でホストできます。