Route53でドメインを取得してWordPressインスタンスにマッピングする方法

<h2>【はじめに】</h2>
Amazon Route53を使ってドメインと取得し、Lightsailで作成したWordPressインスタンスにマッピングする方法を紹介します。
「kyonaka blog」もLightsailを使用しているため、AWSサービスと連動性が高いという理由でRoute53を利用しました。
本格的にブログを運営していくためには、対応が必須となるのでぜひ参考にしてください。
<h2>【Route53とは？】</h2>
<ul>
 	<li>可用性と拡張性に優れたクラウドのドメインネームシステム (DNS) ウェブサービス。</li>
 	<li>www.example.com のような名前を、コンピュータが互いに接続するための数字の IP アドレス (192.0.2.1 など) に変換するサービス。</li>
</ul>
<a href="https://aws.amazon.com/jp/route53/">https://aws.amazon.com/jp/route53/</a>

Lightsailで作成したWordPressインスタンスは、始めはIPアドレスしか持っていないです。
もしドメインを持っていなければ、読者がブログをGoogleや Yahoo!などで検索する場合、IPアドレスを入力しなければ検索結果にヒットしません。
ドメインサービスは様々ありますが、Route53は公式サイトに「他のAWSサービスと併用しやすい」と記されています。
<blockquote><b>他のアマゾン ウェブ サービスと併用しやすい設計</b>
Amazon Route 53 は、AWS の他の機能やサービスと連動するように設計されています。Amazon Route 53 を使用して、Amazon EC2 インスタンス、Amazon S3 バケット、Amazon CloudFront ディストリビューションおよびその他の AWS リソースとドメイン名をマッピングできます。AWS Identity and Access Management (IAM) サービスと Amazon Route 53 を組み合わせることで、DNS データを更新するユーザーをきめ細かく管理できます。Amazon Route 53 のエイリアスレコードと呼ばれる機能を使用することにより、Zone Apex (www.example.com ではなく example.com) から Elastic Load Balancing インスタンス、Amazon CloudFront ディストリビューション、AWS Elastic Beanstalk 環境、API ゲートウェイ、VPC エンドポイント、またはAmazon S3 ウェブサイトバケットへマッピングできます。</blockquote>
特にドメインサービスにこだわりがなければ、Route53を利用することをおすすめします。
<table>
<thead>
<tr>
<th align="left">サービス</th>
<th align="left">リージョン</th>
<th align="left">1ヶ月あたりのコスト</th>
<th align="left">設定の概要</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">Amazon Route53</td>
<td align="left">Asia Pacific(Tokyo)</td>
<td align="left">0.51USD(65.25 円)</td>
<td align="left">ホストゾーン (1), ホストゾーンの追加レコード (5)</td>
</tr>
</tbody>
</table>
<a href="https://calculator.aws/#/estimate?id=3ea9d806c22c4f501d8fbb51a83b996213a1555b">AWS Pricing Calcuratorでの見積結果URLはこちら</a>

※見積もりは一例です。
ホストゾーンと追加レコード数に対する見積もりなので、それ以外に使用したリソースに対する料金は別途発生する可能性があります。
<ul>
 	<li>サービスで応答したドメインごとのクエリ</li>
 	<li>サービスでドメインを管理するために使用しているホストゾーン</li>
 	<li>トラフィックポリシーやヘルスチェックなどのオプション機能</li>
</ul>

<hr />

<h2>【実際にRoute53でドメインを取得してみる】</h2>
次の手順で説明していきます。
手順1：IAMユーザでサインインして、「Route53」を選択しドメインを登録する
手順2：LightsailコンソールでDNSゾーンを作成する
手順3：Route53に登録されているホストゾーンのネームサーバの変更する
手順4：レコードを追加する
<h3>手順1：IAMユーザでサインインして、「Route53」を選択しドメインを登録する</h3>
・IAMユーザでサインして、コンソール画面の検索バーから「Route53」を入力し、「Route53」をクリックします。

<img class="wp-image-136 aligncenter" src="http://52.199.62.59/wp-content/uploads/2022/05/スクリーンショット-2022-05-21-17.09.07-300x140.png" alt="" width="1200" height="560" />

・サイドバーから「ドメイン」内の「登録済みドメイン」を選択し、「ドメインの登録」をクリックします。

<img class="aligncenter wp-image-131" src="http://52.199.62.59/wp-content/uploads/2022/05/2022-05-21-17.11のイメージ-2-300x85.jpg" alt="" width="1200" height="338" />

&nbsp;

・ドメイン名を入力し、ドメインの種類を選択します。
※「チェック」をクリックすると、入力したドメイン名が使用可能かどうかをチェックしてくれます。
※使用するドメイン名を決めたら、「続行」をクリックします。

<img class="aligncenter wp-image-138" src="http://52.199.62.59/wp-content/uploads/2022/05/スクリーンショット-2022-05-21-17.20.27-300x190.png" alt="" width="1200" height="759" />

・「ドメインのお問合せ詳細」画面で、登録者の連絡先を入力します。
※アカウントを作成したときの情報がそのまま入力された状態で表示されるので、変更点があれば修正してください。
※連絡先タイプは「個人」を選択し、プライバシーの保護は「有効化」にしておきます。
※登録期間は「1年」にしておきます。
※全ての項目を入力したら、「続行」をクリックします。

<img class="aligncenter wp-image-140" src="http://52.199.62.59/wp-content/uploads/2022/05/スクリーンショット-2022-05-21-17.29.30-300x62.png" alt="" width="1200" height="247" />

&nbsp;

&nbsp;

<img class="aligncenter wp-image-141" src="http://52.199.62.59/wp-content/uploads/2022/05/スクリーンショット-2022-05-21-17.30.26-300x53.png" alt="" width="1200" height="210" />

&nbsp;

・「連絡先の詳細の確認」画面で連絡先情報が正しいことを確認し、「AWSドメイン名の登録契約」を読んで同意にチェックを入れ、「注文を完了」をクリックし完了です。
※ドメインの自動更新は「有効化」にしておきます。長期的にブログを運用するためには必須です。

<img class="aligncenter wp-image-142" src="http://52.199.62.59/wp-content/uploads/2022/05/スクリーンショット-2022-05-21-17.36.05-300x131.png" alt="" width="1200" height="526" />

&nbsp;

・登録メールアドレスに確認メールが届くので、メールが受信されたことを確認します。
・Route53のコンソール画面のサイドバーから「ドメイン」内の「登録済みドメイン」を選択し、ドメインが作成されたことを確認します。

・サイドバーから「ホストゾーン」を選択し、作成したドメイン名と同一のホストゾーンが自動的に作成されているか確認します。

<img class="aligncenter wp-image-132" src="http://52.199.62.59/wp-content/uploads/2022/05/2022-05-21-17.43のイメージ-300x83.jpg" alt="" width="1200" height="334" />

<hr />

<h3>手順2：LightsailコンソールでDNSゾーンを作成する</h3>
※Amazon Lightsailを使い、WordPressでブログ環境を構築する方法は次の記事を参考にしてください。

https://www.kyonakablog.com/aws/wordpress-using-amazon-lightsail/

・Lightsailホーム画面の「ネットワーク」タブで、「Create DNS zone」を選択します。

<img class="aligncenter wp-image-143" src="http://52.199.62.59/wp-content/uploads/2022/05/スクリーンショット-2022-05-21-17.49.40-300x66.png" alt="" width="1200" height="264" />

・Route53で作成したドメイン名を入力して、「Create DNS zone」をクリックします。

<img class="aligncenter wp-image-135" src="http://52.199.62.59/wp-content/uploads/2022/05/amazon-wordpress-tutorial-14-300x188.png" alt="" width="1200" height="750" />

・ページに表示された、ネームサーバのアドレスを書き留めておきます。

<img class="aligncenter wp-image-144" src="http://52.199.62.59/wp-content/uploads/2022/05/スクリーンショット-2022-05-21-17.53.43-300x90.png" alt="" width="1200" height="362" />

・ドメインのDNSゾーンで「Add record」をクリックします。
※「Aレコード」でWordPressインスタンスにアタッチした静的IPアドレスとドメインを関連づけます。
※サブドメイン部分には「@」記号を入力します。（CNAMEレコードで追加するサブドメインとして登録はされません。）
※「CNAMEレコード」でサブドメインを指定します。（先頭にwww.を付けるなど）
※チェックマークをクリックして、保存します。

<img class="aligncenter wp-image-145" src="http://52.199.62.59/wp-content/uploads/2022/05/スクリーンショット-2022-05-21-18.00.18-300x75.png" alt="" width="1200" height="301" />

&nbsp;

<img class="aligncenter wp-image-146" src="http://52.199.62.59/wp-content/uploads/2022/05/スクリーンショット-2022-05-21-18.00.53-300x58.jpg" alt="" width="1200" height="232" />

<hr />

<h3>手順3：Route53に登録されているホストゾーンのネームサーバの変更する</h3>
手順2でDNSゾーンを作成しただけでは、ドメイン名でWordPressウェブサイトの管理ダッシュボードにアクセス出来ません。

・Route53のコンソール画面のサイドバーから「ホストゾーン」を選択し手順1で自動的に作成されたホストゾーンを選択します。
※レコードタイプが「NS（ネームサーバ）」にチェックをし、レコードの編集からLightsailで作成したDNSゾーンのネームサーバに変更します。

<img class="aligncenter wp-image-133" src="http://52.199.62.59/wp-content/uploads/2022/05/2022-05-21-18.16のイメージ-300x150.jpg" alt="" width="1200" height="598" />

<hr />

<h3>手順4：レコードを追加する</h3>
ドメインを作成した直後のRoute53のホストゾーンには「NSレコード」と「SOAレコード」しか登録されていません。

・ホストゾーンのNSレコードを変更したら、Lightsailで作成したDNSゾーンと同じ「Aレコード」と「CNAMEレコード」を追加します。

<img class="aligncenter wp-image-134" src="http://52.199.62.59/wp-content/uploads/2022/05/2022-05-21-18.25のイメージ-300x203.jpg" alt="" width="1200" height="813" />

・レコード追加後にブラウザウィンドウでドメイン名を入力すると、WordPressウェブサイトの管理ダッシュボードにアクセスできるようになります。

<hr />

<h2>【それでもドメイン名でアクセスできない場合】</h2>
使用しているPC使用しているネームサーバがホストゾーンのネームサーバに対して名前解決ができていない可能性があるので、Route53のホストゾーンで使用しているネームサーバで名前解決できるようにネームサーバを追加する必要があります。
直接、Route53のホストゾーンで使用しているネームサーバを追加してもいいですが、私は「Google Public DNS」を使用してます。
「Google Public DNS」とは、Google 社が無償で提供しているネームサーバー（DNSサーバー）です。
次のようなメリットもあるので、おすすめです。
<ul>
 	<li>ネームサーバーのIPアドレスが「8.8.8.8」「8.8.4.4」と覚えやすい</li>
 	<li>Webサイトのページを表示するまでの速度が上がる（名前解決の速度が速い）</li>
 	<li>DNSレコードの変更が数分レベルで反映される</li>
</ul>

<hr />

<h2>【さいごに】</h2>
今回はAmazon Route53を使ってドメインと取得し、Lightsailで作成したWordPressインスタンスにマッピングする方法を紹介しました。
AWSの公式チュートリアルを参考にドメイン取得とLightsailコンソールでDNSゾーンを作成するところまではスムーズに進みましたが、その後のドメイン名でアクセスできない原因の解決に結構な時間がかかりました。

今までの私であれば、きっと挫折していたと思います。
しかし分からないことやエラーの原因が解消されながら苦労して構築したブログは、始めたばかりであってもすでに思い入れがが強くなっています。

皆さんもぜひ、経験してみることをおすすめします。