Azure TIPS
Azure Webサイトにカスタムドメインを設定するには?
Microsoft Azure Web Sitesで独自ドメイン名を適用する方法を説明する。CNAMEレコードだけでなく、wwwなしのネイキッドドメインが実現可能なAレコード(IPアドレス)も指定できる。
Microsoft Azure Web Sites(以下、単に「Webサイト」)では、Webサイト新規作成時に指定した名前が、azurewebsites.netドメイン上のサブドメインとして適用され、利用できる。しかし実際に本番サイトを運用する場合には、ドメイン名自体をブランド化したり、ユーザーにとってより分かりやすくしたりするために、独自にドメインを取得し、カスタムドメインとして割り当てることが一般的である。
DNSのリソースレコード
Webサイトに関連付けることができるリソースコードは、AレコードとCNAMEレコードである。Aレコードは、ホスト名からIPアドレスを正引きするためのレコードである。CNAMEは、別名を付け、特定のホストから別のホストへ転送するためのレコードである。これらを用いることで、カスタムドメインからWebサイトのIPアドレスを解決、または、Webサイトのホストへ転送できる。
CNAMEレコードによる関連付け
カスタムドメインが利用できる条件
ドメインは、事前にドメイン取得サービス(お名前.comやムームードメインなど)で取得する。以後の説明では、取得した「qaramell.com」というカスタムドメインを用いる。カスタムドメインを関連付けるには、Webサイトのホスティングプランを[共有]/[基本]/[標準]のいずれかに変更する必要がある(図1)。
- 1[スケール]タブを開く。
- 2[web ホスティング プランのモード]を[共有]/[基本]/[標準]のいずれかに変更する。
- 3[保存]ボタンをクリックし、プランの変更を有効化する。
ドメインサービス側の設定
次に、ドメインを取得したサービスのDNS管理画面から、レコードを追加する。ここでは「sample.qaramell.com」を「domain-sample.azurewebsites.net」に転送するように設定を試みる。設定するには、上記の「sample.qaramell.com」から「domain-sample.azurewebsites.net」へのCNAMEレコードに加えて、(Azure特有の設定項目になるが)「awverify.sample.qaramell.com」から「awverify.domain-sample.azurewebsites.net」へのCNAMEレコードを設定する必要がある。
レコードの設定が反映されるまでには時間がかかる場合があるため、設定後はある程度(通常は数分程度、長い場合は数時間程度)待つ必要がある。
Azure Webサイト側の設定
レコードの設定が反映されていれば、Webサイトからカスタムドメインの関連付けを行えるようになる。関連付けを行うには、[構成]タブの[ドメインの管理]から行う(図3)。
カスタムドメインの管理画面が表示されるので、そこで関連付けたいカスタムドメインを入力する。もし、レコードが反映されており、関連付けられる状態であれば、次の画面例のように、入力欄の右に緑色のチェックマークが表示される。
- 1 関連付けるカスタムドメイン(この例では「sample.qaramell.com」)を入力する。
- 2 緑色のチェックマークが表示されていることを確認する。
- 3 ボタンを押し、カスタムドメインを追加する。
カスタムドメイン関連付けの確認
以上で、CNAMEレコードによるカスタムドメインの関連付けは完了だ。カスタムドメインにWebブラウザーからアクセスすると、Webアプリケーションが表示され、関連付けられていることが確認できる(図5)。
Aレコードによる関連付け
カスタムドメインが利用できる条件
CNAME同様、Webサイトのホスティングプランを[共有]/[基本]/[標準]のいずれかに変更する必要がある。
ドメインサービス側の設定
ホスティングプランを変更後、ドメイン取得サービスのDNS管理画面から、レコードを追加する。ここでは「www.qaramell.com」からWebサイトのIPアドレスを解決する設定を行う。設定するには、上記の「www.qaramell.com」からWebサイトのIPアドレスへのAレコードに加えて、(Azure特有の設定項目になるが)「awverify.www.qaramell.com」から「awverify.domain-sample.azurewebsites.net」へのCNAMEレコードを設定する必要がある。
WebサイトのIPアドレスは、nslookup
などのコマンドからも取得できるが、図4のカスタムドメインの管理画面からも確認可能だ。カスタムドメイン入力フォーム下部の赤枠で囲っている部分にAレコードの構成時に使用するIPアドレスが表示されている。
Azure Webサイト側の設定
レコード設定後、CNAMEと同様に[構成]タブの[ドメインの管理]からドメインの管理画面を開き、カスタムドメインを追加する。
カスタムドメイン関連付けの確認
以上で、Aレコードによるカスタムドメインの関連付けは完了し、カスタムドメインにウェブブラウザからアクセスすると、Webアプリケーションが表示され、関連付けられていることが確認できる。
まとめ
Webサイトでは、AレコードとCNAMEレコードを用いて、カスタムドメインを関連付けることができる。関連付ける際には、レコードの設定が反映するまでに多少の時間を要するため、設定後、すぐにカスタムドメインを入力してもチェックマークが表示されない場合がある。その際は、設定したレコードが間違っていないかを確認し、レコードが反映されるまでの間、待つ必要がある。大抵の場合は数分で反映されるが、時には数十分から数時間かかる場合もあることを考慮する必要がある。
Webアプリケーションにとって、URLアドレスは名前に等しいといっても過言ではない。そのような自サービスのブランド面から見てもカスタムドメインは必要であるが、何よりも、カスタムドメインを関連付けることによって、関連付けるWebサイトのインスタンスを自由に選択できるようになることが利点である。例えば、Webサイトのリージョン間の移動では、Webサイトのインスタンスをターゲットとなるリージョンに複製し、カスタムドメインの関連付けを変更するだけでよい*1。
- *1 Webアプリケーションがどのような作りになっているか、DBごとの移動なのかで、リージョン間の移動の難易度は変わるため、一概には言えない。
このように、カスタムドメインを関連付けることによって、特定のWebサイトインスタンスへの依存度を下げられる。そのため、APIサーバーなど、ユーザーから見えないものであっても、カスタムドメインは必ず付けることをお勧めする。
※以下では、本稿の前後を合わせて5回分(第1回~第5回)のみ表示しています。
連載の全タイトルを参照するには、[この記事の連載 INDEX]を参照してください。
1. クライアントPCから「Azure SQLデータベースをBlobストレージにバックアップ」するには?[C#]
Azure SQLデータベースを.bacpacファイルとしてBlobストレージにエクスポートするコンソール・アプリの作り方を紹介。そのアプリをタスク・スケジューラーに登録すれば、定期バックアップも実現できる。
2. Azure Webサイトのデプロイ・ロジックをカスタマイズするには?
Azure Webサイトでは、さまざまなWebアプリをGitでデプロイできるだけでなく、そのデプロイ・ロジックを自由にカスタマイズすることもできる。そのカスタマイズ方法を解説する。
3. Azure WebサイトのSite Extensions「DaaS」で各種ログを手軽に収集・解析するには?
“Diagnostic as a Service”(DaaS)を利用して、エラーログ、メモリダンプ、HTTPログを一括で収集し、解析を行う方法を説明する。
4. 【現在、表示中】≫ Azure Webサイトにカスタムドメインを設定するには?
Microsoft Azure Web Sitesで独自ドメイン名を適用する方法を説明する。CNAMEレコードだけでなく、wwwなしのネイキッドドメインが実現可能なAレコード(IPアドレス)も指定できる。
5. Azure Webサイトをバックアップするには?
Azure Webサイトでは、Webサイトとデータベースをバックアップ/復元するための機能が提供されている。その機能の基本的な使い方を解説する。