【AWS】Route 53でサブドメインとEC2インスタンスを紐づけるホストゾーンを作成する

最終更新 2026年3月12日 最終更新者 administrator

まずはRoute 53から右上のホストゾーンの作成ボタンを押下します。

EC2インスタンスはEIPで固定IPを割り当てないと再起動するたびにIPアドレスが変わる

AWSのEC2で立ち上げるインスタンスは再起動するたびにパブリックIPアドレスが変わります。

Elastic IP(EIP)を使用することで固定のパブリックIPアドレスをEC2インスタンスに割り当てられます。

サブドメインとEC2インスタンスのIPアドレスを紐づけるパブリックホストゾーンを作成する

EC2インスタンスと紐づけたいサブドメインをドメイン名に入力します。タイプはパブリックホストゾーンのままにして「ホストゾーンの作成」ボタンを押下します。

ホストゾーンが作成されると以下の表示が出ます。

つぎに、ホストゾーンのを作成した後確認できる、以下の画面の「NS」レコードの「トラフィックのルーティング先」に書かれている文字列(4行のドメイン)を、ドメインを管理しているサービスで、DNSレコードを編集する形でレコードを編集していきます。

SOAについては今回は気にする必要はありません。

作成したパブリックホストゾーンにEC2インスタンスのIPアドレスを紐づけるAレコードを作成する

作成したパブリックホストゾーンに、EC2インスタンスのIPアドレス(パブリックIPアドレス)とサブドメインを紐づけるAレコードを作成します。

ドメインレジストラ側で操作してDNSレコードを作成する

今回はエックスサーバーでの操作例です。先ほどホストゾーンを作成した際に確認したNSレコードとサブドメインのNSレコードを紐づけます。TTLについてはこのままで問題ありません。

次に、EC2インスタンスのパブリックIPアドレスも紐づけます。今度は上記で設定したNSレコードではなく、Aレコードを使用します。こちらもTTLについてはこのままで問題ありません。

ApacheやNGINXのconfファイルにサブドメインとRootDocumentを紐づける設定を記載する

/var/www/などのディレクトリと、サブドメインを紐づける設定をApacheやNGINXのconfファイルに記載します。

Red HatなどのApacheは「/etc/httpd/httpd.conf」、UbuntuのApacheは「/etc/apache2/sites-available」配下の.confファイルです。

今回紹介する環境では、Ubuntuの以下ファイルにサブドメインとRootDocumentを紐づける設定を記載しました。

/etc/apache2/sites-available/000-default.conf

設定を編集したら以下のコマンドを実行してApacheやNGINXに設定を読み込ませます。

# systemctl daemon-reload
# systemctl restart apache
# systemctl restart nginx

設定したサブドメインにブラウザからアクセスする

設定したサブドメインにブラウザからアクセスできたら設定は終わりです。

http://<サブドメイン>

IPアドレスとドメインを紐づけたEC2インスタンス上のサイトをSSL化する

certbotを使ってEC2上でホストしているWordPressサイトなどをSSL化するには以下の記事の対応を行います。

SSL化すると、http://<サブドメイン>ではなく、https://<サブドメイン>での接続が可能です。