古いWordPressサイトのサーバー引っ越し

H社さまのHPのサーバー移転を行わせていただきました。

サーバーの引っ越しが強制でやらなきゃいけなくなりました。。。

と、お問い合わせがありました。
お話を聞かせていただくと、
現在利用しているホスティングサーバーのPHPバージョンが古く(PHP5.5)、新しいバージョンのものに入れ替える予定なのだが、ディストリビューション自身も古く(CentOS5)、こちらのサーバー自身がもはや古すぎてアップデートのやりようが無いためサーバー自身を引越ししてくれないか
と、業者から連絡が来たそうです。
普通はそのような状況ならサーバー業者がコンテンツの移転・動作の確認までするものだと思うのですが、それはそちらでやってくれと言われたそうで、途方に暮れて相談に来られました。

とりあえずサイトを見せてくださいと。コンパネがあるならログインさせてくださいということで見させてもらいました。
そうしたところ、まず問題があったのがWordPressのバージョンが4で、古くてどうにもならないレベルでした。
とりあえず確認したところ、PHP5.5であればとりあえず動くことがわかりました。
なので、引っ越し先のサーバーでまずはPHP5.5が使えて、そのままPHP7に変更できるようなサーバーを探しました。
実際は当社で取り扱っているサーバーであれば一旦PHP5.5にして、WordPressのアップデートをしていきPHP7で稼働するバージョンまで上げたらPHPを7に変更するということが可能なので、最低当社のサーバーに収容することで解決可能だということがわかりました。
今回のご依頼はとりあえずスポットでサポートに入ってほしいということでしたので、できればサーバー等も切り分けておきたいということで、サーバー業者も探しました。
一応格安のサーバー業者でPHPのバージョン変更が可能な業者が見つかりましたのでそちらで動かすことにしました。

引っ越しのテスト

引っ越し自身はWEBサイトのフォルダごとバックアップを取って新しいサーバーにアップロード、DBをエクスポートしてインポートすれば動くはずですが、なにせWordPress4ですから、動くかどうかも試してみないとわかりません。。。
そこで、2週間お試しで使える制度がある業者を使って、まずはお試し期間中にテストすることにしました。
またそのサーバーサービスの場合お試しで浸かっている環境をそのまま本番環境にすることができるのでうまくいけば、あとはXデーを決めてドン!で切り替えができるはずだと踏んで、その業者のお試し契約を行いました。
そして、データの移動DBのインポートを行ってみたところ、うまく出力されました。

WordPressのアップデート

次はWordPressのアップデートです。
現在のWordPressから、最新のWordPressまで、メジャーアップデートを含んで実に30個くらいアップデートが出ていました。
飛ばし飛ばしでやっても良かったと思いますが、今回は慎重にひとつづつアップデートをかけて行きました。

そうすると、あるところで、PHPを7にしようという警告が出るように。
そのタイミングでPHP5.5だった設定をPHP7に変更。
これで動けばあとは、WordPressを最新までもっていってサイトが動いていれば引っ越し完了になります。

アップデートがすべて終わり、プラグインのアップデートもすべて最新のものにします。
ここで、一つ問題が出ました。
ガラケー用のデザインを入るために使っていたプラグインがかなり以前にプラグインのアップデートがリリースされなくなっていて、最新のWordPressでは動かない状態になりました。
残念ですがガラケー用デザインはここで廃止することにしました。
代わりに、スマホ用のデザインとしてAMPを採用しました。

そして、トップページを開くと、、、

真っ白。。

になりました。エラーで止まっちゃっています。。。
やっぱりうまくいかないか。。。

現状はまだ古いサーバーで稼働しているので真っ白になっても今のところは問題はありませんが、引っ越しを進めるとサイトが表示しないのでこれではダメです。
原因はテーマにあり、何かが引っかかってエラーで止まっているのはわかりました。

一応先方様にはここまでの状況を説明して、最悪ワードプレスのテーマを変更する必要が出てくるかもしれない旨を伝え、有償ではありますが日本でサポートが受けられるテーマをいくつか紹介し、検討するようお願いしました。

その間に、私の方で、現状のテーマで引っかかっているところを調査。
なぜなら、こちらの社長さんは、今のデザインを大変気に入っているようで、できれば古臭いかもしれないけど今のデザインのままで行きたいこと、2年後に、会社が大きな周年を迎えるので、リニューアルはそのタイミングで考えていることを聞いていましたので、できればあと2年は従来のデザインのまま行きたいと考えていました。

探ったところ結構シンプルで、ページの中で一点だけ、PHP5まで存在していた関数が一つ書かれていて、これをPHP7の関数に書き換えることで表示されるようになりました。
あともう一つ、ヘッダになぜか大きな余白ができてしまうようになって、これはIE7の表示のためのコードが書かれていて、これがPHP7で干渉していたようで。。。
もうIE7はさすがに意識しなくてもいいか。。。IE7ユーザにサイトがまともに表示されていなくても…それは仕方ないか。。。
ということでそのコードを削除。
これで、最新のWordPressで従来デザインでまったく同じように表示できるようになりました。

これで、移転ができることがわかりましたのでGOサインを出してもらって引っ越ししました。

その他

引っ越ししたついでに、今後あまり困らないようにいくつかプラグインで設定。

SSL化

引っ越しした先のサーバーでは、無料で使えるSSL証明書が取得できますのでこれを機会にサイトのフルSSL化を実装。
今までSSL化されていなかったことは従前から気になっていましたのでこの機会に対応しました。

画像のWebp化

プラグインで手軽にできるので画像をwebp化しました。
これにより、かなりサイトパフォーマンスが改善しました。

その他高速化

キャッシュ・画像やCSSの遅延読み込みなどを行うプラグインで表示の高速化を施しました。
これにより、従来より体感でも3~5倍の高速化が測れました。

Googleサイトマップ登録

GoogleSearchConsoleにサイトマップを登録。今後アクセスの伸びなどを確認してほしいと言われてもすぐ確認できるように登録。

WordPress内で確認できるアクセス分析ツールの導入

普段のアクセスがどうなっているのか見たいと言われてもすぐに見れるようにアクセス分析用のプラグインを導入しました。