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"
・その他はキャッシュ範囲、キャッシュ時間等を目的にあわせて設定する