s3のバケットでWebホスティングしたドメインをCloudFrontのACMでhttps化するときの注意点

Amazon s3に登録したドメインをCloudFrontのACMでhttps化する設定で、小さなハマりどころがあったので、備忘録としてブログに残します。

■目的
・s3で配信しているWebページがある
・s3の配信をhttps化して、かつCloudFrontで高速に配信したい

まず、解決方法の概要から、
s3で配信するために登録したDNS(Route53)設定のままでは、CloudFrontを経由した配信にならずhttpsの通信ができない。
CloudFront用のドメインをRoute53に登録すれる事で解決した。
それだけの設定なのですが、CloudFront用のドメインに気付くまで時間が掛かってしまった。。。

※CloudFrontのドメインが表示される画面
"CloudFrontリソースグループ "の "General"を設定すると該当のドメインが割り当てられて表示される。

 

 

 

 

 

 

 

 

※Route53設定の注意点

・前提条件として、s3でのWeb配信は設定済みとする。
・s3をCloudFrontで参照するためには、赤枠で囲ったドメイン(xxxx.cloudfront.net)を、Route53の配信対象のドメインへcnameとして設定する必要がある

※CloudFrontのOrigin設定
・s3で独自ドメインを割り当てたバケットはhttpsが使えないので、"Origin Protocol Policy"には"http only"を指定する
・"Origin Domain Name"が設定済みだと、プロトコル選択(http, https)が表示されない場合がある
・"Origin Domain Name"に適当なドメイン(test.comとか)を入力すると、プロトコル選択(http,https)が表示される

※CloudFrontのBehavior設定
・"http and https"
・その他はキャッシュ範囲、キャッシュ時間等を目的にあわせて設定する