はじめに
今回は様々な方の記事に助けられながらタイトルの通りのことを行った記録のようなもので, あまり細かく説明していくことは長くなってしまうため行いません。
S3 のバケット作成
S3 の公開用のバケットを作成します。公開するのあたって気をつけたこととして, アクセス権限を読み取り許可にしました。
CloudFront で Distribution を作成
CloudFlont にて Create Distribution から Origin Domain Name に該当の S3 のバケットを選択して作成します。
CloudFront での CNAME 作成用に証明書を発行
AWS Certificate Manager(https://aws.amazon.com/jp/certificate-manager/) から証明書を発行します。こちらを発行しないと現在 AWS では, CloudFront にて CNAME を設定することができないようです。
ドメイン名を入力して発行を続けると, DNS認証かメール認証になると思います。
DNS 認証にして, Route53 にて ホストゾーンを作成し CNAME で追加して認証するのが一番ラクかと思われます。
https://dev.classmethod.jp/cloud/aws/certificate-manager-dns-validation-support/
CloudFront にて Custom SSL を設定 & CNAME を設定
CloudFront で先程設定した SSL を設定し, その次に CNAME を設定できるようになるため, 設定します。
Route53 と CloudFrount を接続
Route53 のホストゾーンに type A IP-v4 アドレス からエイリアス先を指定して, 先程の CloudFront のディストリビューションを指定します。
Route53 と お名前.com を接続
Route53 と お名前.com のどちらも設定が必要になってきます。詳しくは, こちらの記事を参考にするとわかりやすいかと思います。(https://qiita.com/ysKey2/items/0545e13ec05def42ad55)
確認
まず, Route53 と お名前.com を接続できているかを確認するために
nslookup -type=ns ドメイン名
にて, 設定した4つの aws の value が帰ってくることを確認してください。
次に Route53 と CloudFrount を接続できているか確認するために
nslookup ドメイン名
で見つかるか確認してください。
最後に, 実際にドメイン名にアクセスしてみて S3 のファイルが参照できるか確認してみてください。
お疲れさまでした。