古いWordPressを新サーバーへ移行したら表示が崩れた。復旧までに確認したこと
WordPressの引っ越しはコピーだけでは終わらない
WordPressサイトのサーバー移行というと、
「ファイルとデータベースをコピーすればいい」
と思われることがあります。
新しいサイトなら比較的簡単に終わることもあります。
しかし10年近く運用されているサイトなどでは、
移行したことをきっかけに、それまで見えなかった古い仕様が一気に表面化する
ことがあります。
今回移行したサイトも、かなり長期間運用されているWordPressでした。
新しいサーバーへ移したところ、単純な引っ越しでは済みませんでした。
最初の移行ツールがうまく動かない
当初は、普段利用しているWordPress移行プラグインで作業を始めました。
ところがインポートが正常に完了しません。
移行プラグインは非常に便利ですが、
- PHPバージョン
- ファイルサイズ
- サーバー制限
- 実行時間
- WordPressの古さ
などによって失敗することがあります。
そこで同じ方法にこだわらず、別のバックアップ・復元プラグインへ切り替えました。
こちらではバックアップデータを正常に復元することができました。
トラブル時には、
ひとつのツールで粘り続けない
ことも大切です。
目的はそのプラグインを使うことではなく、サイトを安全に移行することだからです。
PHPバージョンを確認する
次に重要だったのがPHPです。
古いWordPressサイトでは、テーマやプラグインに古いPHPコードが含まれていることがあります。
新サーバーだからといって、いきなり最新PHPにするとエラーになる可能性があります。
今回のサーバーでは複数のPHPバージョンを選択できたため、まず既存サイトが動作するバージョンへ合わせました。
移行後にPHPを上げる場合も、
移行とPHPアップデートを同時に行わない
方が原因を切り分けやすくなります。
サーバー移行、WordPress更新、PHP更新を全部同時にやって表示が壊れると、どれが原因なのか分からなくなります。
SSL未設定なのにHTTPSへ飛ばされる
さらに、新しい環境ではまだSSLの準備ができていない段階なのにHTTPSへ転送される現象がありました。
こういう場合は、
- WordPressのサイトURL
.htaccess- サーバー側のリダイレクト
- プラグイン
- HTML内の固定URL
などを確認します。
以前の環境で追加された設定が、新しいサーバーでもそのまま働いているケースがあります。
長く運用しているサイトでは、誰がいつ追加したか分からないRewrite設定が残っていることもあります。
.htaccess は特に要注意です。
表示崩れの原因は昔のEdge Animate
移行後、ページの一部で背景やレイアウトがおかしくなる問題もありました。
CSSだけを見ると原因が分かりにくかったのですが、HTMLを追っていくとAdobe Edge Animate関連の古いコンテンツが残っていました。
昔、Web上のアニメーションを作成するために利用されていた仕組みです。
現在ではほぼ使われなくなっていますが、古いWebサイトには残っていることがあります。
さらに、その部分がHTTPSのリソースを参照していたため、新しい環境で正常に表示されません。
今回は現在不要になっている部分だったため、該当要素を取り除いたりCSS側で非表示にしたりして対応しました。
「移行したから壊れた」とは限らない
ここで面白いのは、
新サーバーへ移したことで新しい不具合が発生したように見えても、
実際には以前から存在していた古い仕組みが、環境変更によって表面化しただけ
というケースがあることです。
長く運用しているWebサイトには、
- 古いJavaScript
- Flash時代の名残
- Edge Animate
- HTTP固定URL
- 古いPHP
- 不要なRewrite
- 使っていないプラグイン
などが残っていることがあります。
旧サーバーでは偶然動いていたものが、新しい環境では動かなくなる。
それをひとつずつ整理していくのもサーバー移行作業の一部になります。
移行はサイトの健康診断にもなる
今回の作業では、
- 移行方法の変更
- PHPバージョン調整
- HTTPS転送の確認
.htaccessの確認- 古いコンテンツの整理
- CSS調整
など、複数の対応が必要になりました。
単純なコピー作業ではありません。
ただ逆に考えると、サーバー移行は、
長年積み重なった古いコードや設定を見直す良い機会
でもあります。
移行して終わりではなく、
「なぜこのコードがあるのか」
「まだこの機能は必要なのか」
まで確認すると、移行後のサイトを少しずつ健康な状態へ戻すことができます。
古いWordPressの引っ越しは、荷物を新居へ運ぶだけではなく、
押し入れの奥から出てきた昔の荷物を整理する作業
に近いのかもしれません。