クライアントのWordPressサイトを、へテムルからカラフルボックスへ引っ越しました。ドメインの管理(DNS)はクライアントのIT部門が持っていて、こちらでは触れません。それでも、ドメイン移管はせず、新サーバーで先にサイトを完成させ、最後にAレコード2本の変更を依頼するだけで切り替えられます。
この記事では、契約からDNSの切り替え前後の作業までを、実際の画面で順に説明します。
ドメインは「移管」せず、無料サブドメインで契約する
最初に迷うのが、購入画面の「3. ドメインの利用」です。「他社ドメインを利用」を選ぶと、次のようにドメイン移管の画面になり、認証コード(Auth Code)の入力を求められます。

ドメインの管理者がクライアントのままなら、これは使えません。「無料のサブドメインを利用」を選び、example.cfbx.jp の形でメインドメインを作ります。ここで決めた名前は、あとから変更できません。

契約が済んだら、マイページの「詳細を見る」で共有IPアドレスを控えておきます。のちにクライアントへ伝える、Aレコードの新しい値です。cPanelの右側に出る共有IPと同じ値になっているかも、あわせて確認してください。

本番ドメインはアドオンドメインで追加し、「ドキュメントルートを共有」のチェックを外す
cPanelの「ドメイン」→「新しいドメインを作成」で、本番ドメイン(example.co.jp)を追加します。ここで気をつけるのは、「ドキュメントルートをメインドメインと共有します」のチェックです。
オンのままだと、メインドメインと同じフォルダを使い回すことになります。チェックを外すと、ドキュメントルートが public_html/example.co.jp に自動で入り、サブドメイン欄にも example.co.jp.example.cfbx.jp が入ります。

作成すると、ドメイン一覧に2行が並びます。

FTPで見ると、public_html の下に本番ドメイン用のフォルダができています。以降のファイルは、このフォルダに置きます。

cPanelには、「ドメイン追加後にDNS ManagerでDNSゾーンの追加が必要です」という案内も出ます。DNSをカラフルボックスで持つ場合の話なので、DNSがクライアント側にある今回は不要です。
DNS切り替え前は、本番URLではなくカラフルボックス側のURLでWordPressを入れる
ここで一度つまずきました。本番のURL(https://www.example.co.jp/)にWordPressを入れても、そのURLはまだへテムルを指しています。管理画面を開いても、旧サーバーのサイトに着いてしまい、新しい環境にログインできません。hostsファイルで新サーバーを指す方法も試しましたが、私の環境ではうまくいきませんでした。
そこで、最初のインストールは取り消し、アドオンドメイン作成時に自動でできたカラフルボックス側のURL(https://www.example.co.jp.example.cfbx.jp/)に入れ直しました。cfbx.jp はカラフルボックスのドメインなので、DNSの切り替えを待たずに名前が引け、AutoSSLの証明書も付きます。

インストールしたあとは、アプリ一覧でURLとバージョンを確認できます。
All-in-One WP Migration で旧サイトを丸ごと入れる
中身の移行には、All-in-One WP Migration を使いました。
- 旧サイト(へテムル側)でエクスポートし、
.wpressファイルとして保存する - 新サイトに同じプラグインを入れ、インポートで
.wpressを読み込む - パーマリンクの設定を保存し直す
インポートすると、データベースの内容が旧サイトのもので丸ごと置き換わります。
インポート後、表示が崩れていないかを確認します。
PHPはドメインごとに8.3へ上げる
メインドメインとアドオンドメインの両方を PHP 8.3(ea-php83)にして、サイトが問題なく動くことを確認します。

切り替えは、Aレコード2本を変更する
ここまでで、新サーバー側の準備は終わりです。DNSの切り替えは、Aレコード2本を変更します。その前に、現在の設定を控えておきます。コマンドは1つずつ実行してください。
dig example.co.jp A +short
dig www.example.co.jp A +short
dig example.co.jp MX +short
dig example.co.jp TXT +short
dig example.co.jp NS +short
メールの移行について
MXが旧サーバーを向いていると、メールの移行が別に必要になります。今回はサーバーを替えてもメールには影響しない状況の場合です。
DNSのAレコードを2件、変更します。
example.co.jp(@):198.51.100.20 → 203.0.113.10
www.example.co.jp:198.51.100.20 → 203.0.113.10
※TTLは現在の300秒のままで構いません。MX・TXT・NSなど、ほかのレコードは変更しないでください。TTLが300秒なら、反映は5分ほどです。
DNS反映後の作業:AutoSSL → URL置換 → 強制HTTPS
変更完了したら、次の順に進めます。
1. 新しいIPに切り替わったか確認する
dig www.example.co.jp +short
dig example.co.jp +short
どちらも、控えておいた新サーバーのIPが返れば成功です。
2. AutoSSLで本番ドメインの証明書を発行する
DNSが旧サーバーを向いているあいだは、AutoSSLの検証が通らずエラーになります。切り替え前にエラーが出るのは想定どおりの動きです。

画面には「レコードの反映が完了後、10〜30分でAutoSSLが稼働します」と案内が出ています。待てなければ、cPanelの「SSL/TLSステータス」から「AutoSSLを実行」を押します。
.htaccessに「HTTPからHTTPSへ」「wwwなしからwwwありへ」のリダイレクトが入っていると、証明書の検証用ファイルへのアクセスまで転送され、AutoSSLが失敗することがあります。リダイレクトの手前に、検証用のパスを除外する1行を足しておきます。
RewriteEngine on
RewriteRule ^[.]well-known/(acme-challenge|cpanel-dcv|pki-validation)/ - [L]
有料のSSL証明書(アルファSSL)を使う場合の手順は、カラフルボックスのアルファSSL購入・設定ガイドにまとめています。
3. データベース内のURLを本番ドメインへ置換する
先にバックアップを取り、インポートで書き換わった cfbx.jp のURLを、全テーブルを対象に置換します。
管理画面から行うなら、「Better Search Replace」というプラグインで置換できます。
テーマファイルは「Multi Grep Replacer」で置換します。
複数ルールで一括grep置換ツール「Multi Grep Replacer」 | CODE PLUS(コードプラス)
4. 強制HTTPSをオンにする
証明書が発行されると、ドメイン一覧の強制HTTPSリダイレクトの「?」が、オンにできるスイッチに変わります。メインドメインのほうは、切り替え前からオンにできます。

5. 最後に動作を確認する
https://example.co.jpとhttps://www.example.co.jpの両方が、警告なしで開く- HTTP → HTTPS、wwwの有無の統一が、意図したとおりに転送される
- 問い合わせフォームを送信し、メールが届く
- 管理画面で投稿を保存できる
- 外形監視(死活監視)が正常のまま
関連記事
カラフルボックスのアルファSSL購入・設定ガイド|www問題とSAN対応の落とし穴 | CODE PLUS(コードプラス)