cloudfront.net以外のドメインでwebページを配信したのでやり方をまとめておきます
cloudfrontでページの配信はできたけどドメインを変えたいという人の参考になればと思います
目的
自分が取得したドメインを用いてコンテンツを配信する
やること
- ACM(Amazon Certificate Manager)で証明書を発行する
- cloudfrontのCNAMEを設定する
- Route53でDNS設定をする
前提
- ドメインを取得済
- cloudfrontでコンテンツを配信済み
ACMとは
AWS 管理のリソース(cloudfront, ELB)に対して SSL/TLS 認証のプロビジョニングを行うことができるサービスです
AWS限定ですが、証明書の発行が無料かつ簡単にできるということですね
使わない手はないです
やり方
ACM
リージョンをバージニアにしてからACMにアクセスします
(cloudfrontではバージニアしかACMを利用できません)
証明書のプロビジョニング欄の「今すぐ始める」をクリック
パブリック証明書のリクエストが選択されていることを確認して「証明書のリクエスト」をクリック
ドメインを記入して(example.comなど)次へをクリック
ドメインの検証方法を選択します
Eメールの検証を選択してしまうと825日ごとにメールを受信し、対応しなければならないので
DNSの検証を選択します
cloudfront
cloudfrontでCNAMEと証明書の設定をします
CNAMEとはドメイン名のあだ名みたいなものです
今回は***.cloudfront.netのあだ名としてつけます
GeneralタブでEditをクリックします
CNAMEs欄にドメインを入力します
ACMで正常に証明書のプロビジョニングができていればSSL Certificateの欄の
Custom SSL Certificateが選択できる様になっているのでそちらを選択します
プルダウンメニューから発行した証明書を選択して「Yes Edit」をクリックして完了です
Route53
DNSルーティング設定をしないとまだアクセスできないので
cloudfrontで設定したCNAMEをRoute53に設定します
ドメイン名を入力してパブリックホストゾーンが選択されていることを確認して「ホストゾーンの作成」をクリック
作成したホストゾーンをクリックしてレコードを作成します
ルーティングポリシーはシンプルルーティングを選択
「シンプルなレコードを定義」をクリックするとこんな画面が立ち上がるので
トラフィックのルーティング先をCloudFrontディストリビューションへのエイリアスにして
ディストリビューションを選択をクリックしてルーティングしたいcloudfrontを選択
(レコード名とcnameが一致しないとプルダウンに選択肢が出てこないです)
レコードタイプはAを選択します
最後に「シンプルなレコードを定義」をクリック
自分で設定したドメインにアクセスするとページが表示できます
おめでとうございます!
最後に
ドメインの設定や証明書の発行など今までやったことがなかったので勉強になりました
手順通りやるのは簡単でしたが、何が行われているのかを考えながらやると思いの外自分の理解が浅かったので時間がかかってしまいました