WordPress on LightsailでIPアドレス変更時の自動構成機能が無効化された際に再有効化する

2022.04.26

いわさです。

先日、Lightsailを使って、WordPressマルチサイト環境を構築していました。

動的IPのままカスタムドメインの有効化や無効化の作業をしていると、再起動時に動的IPの変更追従が動作しなくなっていることに気づきました。
対処方法などをご紹介します。

LightsailでのIPアドレス変更のタイミングとドメイン更新機能

今回はLightsailでWordPress Multisiteを作成しました。
Lightsailでは構築直後、パブリックIPアドレスが割り当てられています。

IPアドレスでアクセスしようとすると、閲覧出来るのですが、13.113.107.76.xip.ioへリダイレクトされます。
wp-config.phpを確認するとデフォルトドメインに13.113.107.76.xip.ioが設定されています。

そして、デフォルトでアタッチされているこのパブリックIPアドレスですが、動的IPアドレスとなっていまして、Lightsailインスタンスを停止して再起動すると変更されます。

試してみましょう。

停止するとパブリックIPアドレスが「利用不可」になります。

起動し直すと、パブリックIPアドレスが新しく割り当てされます。
先程まで割り当てられていたIPアドレスとは異なるものがアタッチされました。

しかし、Bitnamiの機能によって、IPアドレス変更時にはドメイン情報を更新するようになっています。
試しに新しいIPアドレスでアクセスすると、割り当てられているデフォルトドメインも、新しいIPアドレスのものに変わっていることが確認出来ます。

IPアドレス変更に伴うドメインの自動更新機能が動作しなくなる

Bitnamiでカスタムドメインを構成する際にconfigure_app_domainを使うと思います。 通常は静的IPアドレスをアタッチし、その後カスタムドメインを構成する流れなのですが、前述のとおり動的IPのまま途中まで設定を行っており、静的IPアドレスでの再構成などを行いました。

そのあたりを変更しているとLightsailインスタンスの停止→起動によってIPアドレスが変更された際に、デフォルトドメインが自動更新されなくなりました。
カスタムドメインの設定でconfigure_app_domainを使うと、IPアドレス変更にともなうドメインの自動更新機能がオフになるためです。

解決策

簡単なことだったのですが、カスタムドメインを設定する際に使うconfigure_app_domainですが、別のオプション(enable-automatic-configuration)でIPアドレス変更時の自動構成を再構成することが出来ました。
カスタムドメイン解除後に、再度自動構成の有効化を行うことで、元通りIPアドレスの変更時にドメイン更新がされてアクセスが出来るようになりました。

$ ssh bitnami@13.113.170.66 -i LightsailDefaultKey-ap-northeast-1.pem

:

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
       ___ _ _                   _
      | _ |_) |_ _ _  __ _ _ __ (_)
      | _ \ |  _| ' \/ _` | '  \| |
      |___/_|\__|_|_|\__,_|_|_|_|_|

  *** Welcome to the WordPress Multisite packaged by Bitnami 5.9.2-1         ***
  *** Documentation:  https://docs.bitnami.com/aws/apps/wordpress-multisite/ ***
  ***                 https://docs.bitnami.com/aws/                          ***
  *** Bitnami Forums: https://community.bitnami.com/                         ***
Last login: Sun Apr 24 21:45:19 2022 from 111.222.333.444
bitnami@ip-172-26-3-65:~$ sudo /opt/bitnami/configure_app_domain --enable-automatic-configuration
Enabling automatic domain update for IP address changes
2022-04-24T22:26:18.430Z - info: Saving configuration info to disk
wordpress 22:26:19.43 INFO  ==> Retrieving current WordPress multisite hostname/domain
wordpress 22:26:19.72 INFO  ==> Updating hostname/domain for WordPress Multisite
wordpress 22:26:20.75 INFO  ==> ** Reloading PHP-FPM configuration **

Enabling automatic domain update for IP address changes

とあるように、IPアドレスの変更によるドメインに自動更新機能が再有効化されました。
アクセスしてみます。

再びIPアドレスの変更に追従されるようになりました。

さいごに

本日はconfigure_app_domainでのIPアドレス変更時の自動構成の再有効化を紹介しました。
通常は静的IPアドレスに切り替えてカスタムドメインを割り当てるので、動的IPで追従してくれなんて要望に戻ることは無いと思うのですが、開発中でカスタムドメインもまだ未設定ということもあり、再度アクセスするために一旦自動構成を有効化する必要があり、この方法を使いました。

同じようにアクセスできなくなった場合や、あるいは意図的にIPアドレス変更時の自動構成のオン・オフを切り替えたい場合などに試してみてください。