ネームサーバーを切り替えて、新しいサーバーでサイトが表示された。ここで移行作業が終わったように見えますが、移行の失敗はたいてい数日後に出てきます。メールが届かない、フォームの通知だけ来ない、特定のページだけ文字化けしている、月初になって定期処理が動いていないことに気づく。しかも、そのころには旧サーバーの解約手続きが進んでいることもあります。切替直後・数日後・解約前の3段階に分けて、何をどの順で確認し、旧環境を消す前に何を引き上げておくかを整理します。
切替直後の1時間で見るのは表示だけではありません
切り替えて最初に確認するのは、当然ながらサイトが表示されるかどうかです。ただ、ここで見るべきは「表示された」ではなく「httpsで、正しいURLで、ログインまでできる」の3点です。
いちばん引っかかるのがSSLです。サーバー会社によっては、無料SSL証明書の発行がネームサーバー切替の後にしかできません。ある法人サイトの移行では、切り替えてから証明書の取得と反映までに約1時間かかり、その間はhttpsでアクセスできない状態になりました。事前に証明書を登録できるサーバーであれば、移行前に済ませておきます。28サイトを2回に分けて移した案件では、1回目にSSLの反映遅延で表示不具合を出したため、2回目は事前登録に切り替えて再発をゼロにしました。1回目の切替は16時半に始めて、表示が落ち着いたのは17時37分です。
次にURLの正規化です。www あり・なしのどちらかに寄せているか、httpでアクセスしたときhttpsへ転送されるか。移行で最も見落とされる項目で、旧サーバーの .htaccess に書いてあった転送設定が新環境に持ち込まれていないと、片方のURLだけ生きている状態になります。
管理画面へのログインとフォームの送信も、この時点でやっておきます。フォームは実際に1通送って、通知メールが届くところまで見ます。あとは主要なページを目で流して、文字化けがないかを確認します。丸数字やローマ数字のような環境依存文字は、移行元と移行先で文字コードの扱いが違うと崩れます。1か所見つかったら、指摘を待たずに同種の箇所をまとめて洗い出してください。
なお、「非公開にしていた記事が公開されている」という報告は、ほぼ管理者としてログインした状態で見ているのが原因です。一度ログアウトして確認してもらうと解決します。
切替の前に決まってしまう分かれ道
移行後の確認がどれだけ楽になるかは、実は切り替え方で決まります。新サーバーの動作確認用URLで事前に表示を検証できるなら、切替は最終確認だけで済みます。ところが、この動作確認URLはプラグインの構成によって機能しないことがあります。SSLを前提にした構成や、URLを固定的に扱うプラグインが入っていると、本番のネームサーバーを切り替えないと正常な画面を出せません。
その場合は「切り替えてから確認する」しかなくなり、ダウンタイムの見積りが変わります。法人が相手なら、社内には「一時的な閉鎖は発生しない」と説明されていることが多いので、この可能性は見積りの段階で共有しておく必要があります。切り替えてから問題が出たときの退避手段は、ネームサーバーを元に戻すことです。これは即座に指示を出せるので、手順書に「不具合があれば元に戻す」と明記しておくと、承認する側も判断しやすくなります。自分で進めるか任せるかの線引きは、サーバー移行を自分でやるか業者に頼むか、分かれ目になる条件で書いたとおりです。
段階別に見るもの
| 時期 | 確認すること | 見落とすとどうなるか |
|---|---|---|
| 切替直後 | https表示/www有無の転送/管理画面ログイン/フォーム送信/文字化け | 公開直後の数時間、一部の利用者だけ表示できない |
| 1〜2日後 | メールの送受信/DNS浸透のムラ/PHPバージョン差による不具合/キャッシュ | 問い合わせが届かないまま気づかない |
| 1週間後 | 定期実行の再設定/外部連携のIP制限/サーバー付帯サービスの再設定/アクセス解析 | 月次の処理が止まったまま月末を迎える |
| 解約前 | メールデータ/アクセスログ/cron設定/DBダンプ/新環境のバックアップ体制 | 取り返しがつかない。復元元が消える |
数日たってから出てくる不具合
メールは移行で最も事故になる部分です。旧サーバーと新サーバーの2アカウントを併用する方式なら受信の空白は作らずに済みますが、直接切り替える方式では約24時間、メールを受け取れない時間が発生します。手間を嫌って直接切替を選びがちなので、その空白時間を先に文字で伝えて合意しておいてください。DNSの反映は2〜24時間、地域や回線によってムラがあり、大規模な切替では24〜36時間を見込みます。切替の順番そのものについてはサーバー移行でメールが届かなくなる理由と、DNS切替の正しい順番にまとめました。
そして、過去に受信したメールのデータは移行できません。サーバーを移せば、旧サーバーに置いたままのメールは消えます。作業前に、メールソフトで全件をダウンロードしておいてもらう必要があります。ある法人サイトの移行では、この案内を作業前に2回出しました。1回では読み飛ばされます。
次にPHPのバージョンです。移行先で標準のPHPが上がると、古いテーマやプラグインがそのまま動かず、サイトが真っ白になることがあります。あるサイトの移転では実際にこれが起き、WordPressコアを最新へ上げることで復旧しました。移行前後でPHPのバージョンを比較する項目を、チェックリストに入れておくべきところです。
もうひとつ、移行後に出た不具合が自分の作業のせいなのか、元からあったものなのかの切り分けも必要です。ある移転では、移転元のテーマの functions.php に記述の誤りが最初から潜んでいました。移行の前に旧環境で同じ操作を試せば判別できます。元からのものであれば、それを伝えたうえで対応範囲を決めます。移行そのものの手順はWordPressのサーバー移行をプラグインなしで行う手順とつまずく箇所に書いています。
付帯サービスの制約も、移行後に判明しがちです。改ざん検知のようなサーバー付属の機能に「1サーバーにつき1サイトのみ有効」といった制限があると、複数サイトを同居させた新環境では全部には掛けられません。契約前に仕様を確認し、掛けられないなら優先順位を決めます。アクセス解析のデータが膨大なサイトは、データベースの移行で不整合が出やすいので、検証の時間を別に見込んでおいてください。
28サイトを2回に分けたときの進め方
19サイトのドメインとWordPressを移し、7ドメインは向き先だけ変更し、サーバー設定を2件行う、という規模の移行を担当したことがあります。合計28サイトを一度に切り替えず、系統ごとに2回に分けました。障害が起きたときの影響範囲が半分で済み、1回目で分かったことを2回目に反映できるからです。実際、SSLの事前登録という改善はこの間に入りました。
受注した初日に、13ステップの手順書を出しています。大事なのは工程の数ではなく、各ステップで何が止まるかを書いたことです。1から7までは既存サイトに影響なし、8から11の間は投稿作業を止めてもらう、10と11はDNSの浸透待ちで24〜36時間かかる。この形で先に伝えると、加盟店や店舗へ通知を出す側も準備ができます。エンドユーザー向けの通知文を先方が作る場合も、必ず目を通してください。メールの扱いについて誤った説明が入っていると、切替当日に問い合わせが集中します。
細かい点ですが、新サーバーが試用期間のままだとメールアドレスの追加などに制限がかかることがあります。スケジュールを組む前に本契約を済ませてもらうところまでが段取りです。
別の移転では、既存の管理業者から接続情報を受け取るのに1か月かかりました。4月末に着手して、FTPの情報が届いたのは6月です。他社が間に入る移行は、作業時間ではなく情報が揃うまでの時間で日程が決まります。
旧サーバーはいつ止めるか
目安は切替から1か月です。すぐに解約したくなりますが、移行と同時にPHPやWordPressのバージョンを上げている場合、後から見えない不具合が出たときに比較できる環境がなくなります。データの復元元としても、しばらく残しておく価値があります。
止める前に引き上げるのは、メールデータ、アクセスログ、cronの設定内容、.htaccess、データベースのダンプ、そして独自に入れていた証明書があればその有効期限の情報です。移行先で証明書が再発行されているか、次の更新がいつかまで確認しておきます。
もうひとつ、新環境のバックアップ体制が整うまでは旧サーバーを消さないでください。プランによっては自動バックアップが標準で付かず、月額数百円の別オプションになっていることがあります。旧サーバーを解約した時点で、そのサイトの控えがどこにも無くなる、という状態は避けたいところです。移行後の運用をどこまで任せるかは保守プランのページに整理しています。
よくある質問
切替後、自分のパソコンからだけ古いサイトが見えます。失敗ですか
ほとんどの場合は失敗ではなく、DNSの浸透待ちかブラウザのキャッシュです。反映には2〜24時間かかり、回線や地域によってばらつきます。確認したいときは、別回線のスマートフォンで見る、シークレットウィンドウを使う、といった方法で切り分けます。48時間たっても古いままなら、ネームサーバーの設定値そのものを疑ってください。
移行後にサイトが真っ白になりました。まず何を見ますか
PHPのバージョンです。移行先の標準バージョンが上がっていると、古いコードが致命的エラーで停止します。サーバーの管理画面でPHPのバージョンを移行元と同じに戻せば、まず表示が戻ります。そのうえで、WordPress本体・テーマ・プラグインを新しいバージョンに合わせていく順で進めます。エラーログを見れば、どのファイルの何行目で止まっているかが分かります。
旧サーバーを1か月残すと費用が二重にかかります。短縮できませんか
短縮する条件は、移行と同時にバージョンを変えていないこと、メールを扱っていないこと、新環境のバックアップが取れていること、この3つが揃っている場合です。3つとも満たすなら2週間程度でも構いません。逆に、PHPやWordPressのバージョンを上げた移行では、月次や四半期の処理が一巡するまで残しておくほうが安全です。1か月分の費用と、復元元を失ったときの損失を比べて決めてください。
移行の成否は、切り替えた瞬間ではなく数日後に分かります。確認する順番と、旧環境から引き上げるものを先に決めておけば、後戻りできない失敗はほぼ避けられます。
