Skip to main content

手順 4. CloudFront で S3, Route 53, ACM の紐付け

これは何

  • CDN にあたるものらしい。キャッシュ等して転送量を軽減してくれるやつ
  • DNS, SSL と直接関係なさそうな気もするが、Route 53, ACM の連携に必要だった

CloudFront の Distribution 作成

作成

  • CloudFront > Create Distribution > Get Started
項目設定値
Origin Domain Name<ドメイン名> を選択
Viewer Protocol PolicyRedirect HTTP to HTTPS
Alternate Domain Names (CNAMEs)<ドメイン名> ( 例: sugoi-domain.com )
SSL CertificateCustom SSL Certificate > <S3のバケット名> を選択
^(この選択肢は上の Alternate なんちゃらとセット)
他の項目ほか全部デフォルト
  • サブドメインの場合は「ドメイン名」のところを「サブドメイン名」でやる

  • ここの注意点は、バケット名をドメイン名と合わせて作ってないと、選択肢に出てこなかった記憶

  • 完了ボタン押したあと [Status] 欄が Deployed になるまでしばらく待つ

疑問点

  • Alternate Domain Names (CNAMEs) に 複数( * と無印 ) を登録している例を見かけたが
    • それをやると サブドメイン毎にディストリビューション作成できなくなってしまう?
    • そもそもこの辺よくわからない

接続確認 (名前解決前)

  • 作成した Distribution の Domain Name 欄のドメイン名にアクセスして、URL が有効であることを確認
txt
https://\<自動生成されたID>.cloudfront.net/a.html
  • この Domain Name を Route 53 側に登録すれば、下記でアクセスできるようになる。
txt
https://\<取得したドメイン>/a.html

Route 53 で紐付け

  • Route 53 > ホストゾーン > <取得したドメイン> > レコードを作成
項目
レコード名(空欄のまま)
レコードタイプA
トラフィックのルーティング先エイリアス : On ← すると下の選択肢が出てくる
^CloudFront ディストリビューションのエイリアス
^米国東部 (バージニア北部) ← それしか選べないはず
^XXXXXXXX.cloudfront.net ← プルダウンから選ぶ
  • この時点でのホストゾーンの設定はこうなる
レコード名タイプ登録されたタイミング
<ドメイン名>A(3) CloudFront 登録後に設定する ← ★ これを作成した
<ドメイン名>NS(1) Route 53 登録時
<ドメイン名>SOA(1) Route 53 登録時
<ハッシュ値のようなもの>.<ドメイン名>CNAME(2) Certificate Manager 登録時

接続確認 (名前解決後)

txt
https://\<取得したドメイン>/a.html

TODO

  • TODO: ErrorPagesタブ
  • TODO: Lambda@Edgeの件