代替ドメイン名を追加する
次のタスクリストでは、CloudFront ドメイン名の代わりに独自のドメイン名をリンクで使用できるように、CloudFront コンソールを使用して代替ドメイン名をディストリビューションに追加する方法を説明しています。CloudFront API を使用したディストリビューションの更新については、「ディストリビューションの設定」を参照してください。
注記
ビューワーで代替ドメイン名を含む HTTPS を使用する場合は、「代替ドメイン名と HTTPS を使用する」を参照してください。
開始する前に: ディストリビューションを更新して代替ドメイン名を追加する前に、以下の操作必ず実行してください。
ドメイン名を Route 53 または別のドメインレジストラに登録します。
ドメイン名を対象とする許可された認定権限 (CA) から TLS 証明書を取得します。証明書をディストリビューションに追加して、ドメインを使用する権限があることを確認します。詳細については、「代替ドメイン名を使用するための要件」を参照してください。
代替ドメイン名を追加する
AWS Management Consoleにサインインし、https://console.aws.amazon.com/cloudfront/v4/home
で CloudFront コンソールを開きます。 -
更新するディストリビューションの ID を選択します。
-
[一般] タブで、[ドメインの追加] を選択します。
処理するドメインを最大 5 つまで入力します。
[次へ] を選択します。
[TLS 証明書] の場合、CloudFront が AWS アカウントの
us-east-1
AWS リージョンでドメインの既存の AWS Certificate Manager (ACM) 証明書を見つけられない場合、証明書を自動的に作成するか、ACM で手動で作成するかを選択できます。証明書がプロビジョニングされたら、DNS レコードを DNS プロバイダーで更新して、ドメインの所有権を証明する必要があります。DNS レコードに必要なエントリーは、CloudFront コンソールで提供されます。
DNS レコードを更新した後、[証明書の検証] を選択します。
証明書が検証されたら、[次へ] を選択します。
変更を確認し、[ドメインの追加] を選択します。
-
ディストリビューションの [General (全般)] タブで、[Distribution Status (ディストリビューションのステータス)] が [Deployed (デプロイ済み)] に変わっていることを確認します。ディストリビューションに対する更新がデプロイされる前に代替ドメインの使用を試みた場合、以下のステップで作成するリンクは機能しません。
-
トラフィックをルーティングするための代替ドメイン名 (www.example.com など) の DNS サービスを、ディストリビューションの CloudFront ドメイン名 (d111111abcdef8.cloudfront.net など) に設定します。使用する方法は、ドメインの DNS サービスプロバイダーとして、または別のプロバイダーとして Route 53 を使用しているかどうかによって異なります。詳細については、「CloudFront 標準ディストリビューションにドメインを追加する」を参照してください。
- Route 53
-
エイリアスリソースレコードセットを作成します。エイリアスリソースレコードセットを使用した場合、Route 53 クエリに対する料金はかかりません。ルートドメイン名 (example.com) に対してエイリアスリソースレコードセットを作成することもできます。DNS では CNAME の使用が許可されていません。エイリアスリソースレコードセットを作成する方法ついては、「Amazon Route 53 開発者ガイド」の「ドメイン名を使用したトラフィックの Amazon CloudFront ウェブディストリビューションへのルーティング」を参照してください。
必要に応じて、クライアントがサポートしている場合、代替ドメイン名の HTTPS レコードを作成して、DNS ルックアップの一部としてプロトコルネゴシエーションを許可できます。
HTTPS レコードを持つエイリアスリソースレコードセットを作成するには (オプション)
CloudFront ディストリビューション設定で、HTTP/2 または HTTP/3 を有効にします。詳細については、「サポートされる HTTP バージョン」および「ディストリビューションを更新する」を参照してください。
Route 53 コンソールで、エイリアスリソースレコードセットを作成します。「ドメイン名を使用したトラフィックの Amazon CloudFront ウェブディストリビューションへのルーティング」の手順に従います。
エイリアスリソースレコードセットの作成中に、レコードタイプ [HTTPS] でエイリアスレコードを作成します。
- 別の DNS サービスプロバイダー
-
DNS サービスプロバイダーが提供する方法を使用して、ドメインの CNAME レコードを追加します。この新しい CNAME レコードによって、DNS クエリが代替ドメイン名 (例: www.example.com) からディストリビューションの CloudFront ドメイン名 (例: d111111abcdef8.cloudfront.net) にリダイレクトされます。詳細については、DNS サービスプロバイダーから提供されたドキュメントを参照してください。
重要
お使いの代替ドメイン名に対応する CNAME レコードが既に存在する場合は、そのレコードを更新するか、ディストリビューションの CloudFront ドメイン名を指す新しいレコードに置き換えてください。
-
dig
などの DNS ツールを使用して、前のステップで作成した DNS 設定がディストリビューションのドメイン名を指していることを確認します。以下の例は、www.example.com ドメインへの
dig
リクエストと、応答のうちの関連する部分を示しています。PROMPT> dig www.example.com ; <<> DiG 9.3.3rc2 <<> www.example.com ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15917 ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 2, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.example.com. IN A ;; ANSWER SECTION:
www.example.com. 10800 IN CNAME d111111abcdef8.cloudfront.net.
...応答セクションには、www.example.com のクエリを CloudFront ディストリビューションドメイン名 d111111abcdef8.cloudfront.net にルーティングする CNAME レコードが示されます。
CNAME
の右側の名前が CloudFront ディストリビューションのドメイン名であれば、CNAME レコードは適切に構成されています。その名前が、Amazon S3 バケットのドメイン名などの別の値であれば、CNAME レコードの設定が間違っています。この場合、ステップ 7 に戻り、ディストリビューションのドメイン名を指すように CNAME レコードを修正します。 -
ディストリビューションの CloudFront ドメイン名ではなくお客様のドメイン名を持つ URL にアクセスして、代替ドメイン名をテストします。
-
アプリケーションで、CloudFront ディストリビューションのドメイン名ではなく代替ドメイン名を使用するように、オブジェクトへのリンクを変更します。