ドメイン変更顛末記

結論は、前のドメイン環境を残しておく。

正直、これにつきますね。
前のドメインは残した状態で新しいドメインを追加するです。
いきなり前のドメインを削除したらアウトです。

今回は、この意識がなかったので、かなり遠回りしました。
それでも、前のドメインを完全に消してしまう前だったので助かりました。

まずは、証明書の作り直し

今どき、WebサービスはSSL通信が標準です。
となりますと、ドメイン毎に証明書を準備しなければなりません。
今回はドメインが変更になるのですから、この証明書も作り直しになります。

以前なら、アマチュアはオレオレ証明書なるものでの運用が一般的でした。
最近は、 Let’s Encrypt なる便利なサービスがあります。
当サイトも、この恩恵にあずかっています。

Let’s Encrypt で証明書を作るには、 SSL通信なし、Basic認証なしでWebサービス 動かさなくてはいけません。
今、サーバーにはapacheとnginxの二つのWebサーバーが入っています。
ラッキーなことに、apacheの方はSSLなし、Basic認証なしの設定でした。
今回は面倒な設定ファイルの変更をすることなく、Webサーバーの切り替えるだけで証明書が作成できました。

Webサーバーを二つ入れているのは完全に私の趣味ですが、ひょんなことで役に立ちました。
かつてのCMではありませんが、二つあるのはいいですね。

お名前ドットコムにも設定が必要

ということで、思いの外サクッと証明書が作り直しできました。
証明書ができれば、あとはWebサーバーを元のnginxに切り替えるだけです。
ところが、ここからが大ハマりでした。

まずは、新しいドメイン名でアクセスするとお名前ドットコムのページが表示されます。
DNSの設定は済んでいるのになぜに??ですね。

結論からいうと、お名前ドットコム側にも設定が必要なのでした。
お名前ドットコムに、VPSのDNSサーバーを登録します。
あとは、DNS情報が浸透するのを待つだけです。

この日の作業はこれにて終了。
申し込みから丸一日、ドメイン変更は完了しませんでした。

最後はWordpressでハマる

翌日、期待に胸を膨らませて新しいドメイン名でアクセスを試みます。
今度は、お名前ドットコムのページは表示されません。
DNSの設定はうまいこといったようです。

ところが、アクセスしてみると証明書エラーでページが表示されません。
しかも、よくよくみるとURLが旧ドメインに切り替わっています。
いくら新ドメインでアクセスしても、旧ドメインにリダイヤルされてしまうのです。

ここからが混迷の極みでした。
どこか、DNSの設定が悪いのか?
しかし、ネットでいくらググっても、ドメイン名変更で旧ドメインにリダイアルなんて事例はでてきません。

悩むこと数時間、「もしかしてWordpressの問題?」とひらめきました。
まずは足元からということですね。
WordPressの設定を確認していくと、wp-config.phpに旧ドメインの設定がある事を確認。
なるほど、リダイヤルの原因はここだったのねと、端末の前でひとり納得です。
そして、 wp-config.php を新ドメインで書き直してアクセス。
そうしたところ、今度は「データベース接続確立エラー」が表示されました。

これ、Wordpress的に痛恨のエラーですね。
一瞬、いままでのブログ記事がすべてダメになったのかと、頭の中が真っ白です。

取り敢えず、深呼吸して小休止。
証明書作成のところから、いったんすべてを変更前の状態に戻しました。
今度は、旧ドメインを残す形で証明書を作ります。
最初から、このようにしておけば苦労はしなかったのですね。

これで、旧ドメイン名でWordpressにアクセスできます。
あとはデータのバクアップを取って、安心できたところでデータベースを操作。
データベース内のドメイン名を書き換えて、ようやく移行が完了しました。

やはり、Wordpressは一筋縄ではいかないですね。
マルチサイト化してるとなおさらです。
まずは転ばぬ先の杖、次に何かするときは、最初にWordpressのバックアップですね。
あらためて、面倒がらずにを鉄則にしたいと思います。