こんにちは!ZIGです。
先日、運営しているワードプレスのPHPバージョンを変更したら画面が真っ白になるという経験をしました。このワードプレス、それなりに収益化していたサイトでもあったので何も表示されなくなった瞬間私の頭の中も真っ白になりました・・・
ああいう瞬間って本当にビビりますよね(笑
というわけで同じミスをしないよう備忘録的な意味も兼ね、その原因と対策をまとめました。
PHPバージョンを変更しようと思った経緯
はい。
まずはなぜPHPバージョンを変更しようと思ったのか?ですが、これはPHPのバージョンを上げた方がワードプレスの動作が速くなる=サイトの表示速度が上がるという話を聞いたため。
最近では多くのサーバーがPHPバージョン7をサポートしてますし、PHP5.6のセキュリティサポートも2018年で終了するなんて話も聞き、どこかでバージョンアップはした方がいいな・・・と思ったわけですね。
で、とりあえず手持ちのサイトでも比較的収益の上がっているサイトのPHPバージョンをチェック!
そしたらやっぱりPHP5.6のサイトがかなりありました。
中には5.4とかのままになってたサイトも(汗
そこで、成果があがってるサイトに関してはPHPバージョンを7以上に変更していくことに。
しかし、とあるワードプレスでバージョンを5.6⇒7に変更した途端に500エラーが起き、サイトが表示されなくなってしまったのです。
ぎゃー!!大事なサイトがああああああああ(泣
とりあえずPHPバージョンを戻したらサイトは復活
画面真っ白にはさすがに焦りましたが、そうなる前にやったことがPHPバージョンの変更だけでしたから、兎にも角にもサーバーパネルからPHPバージョンを7⇒5.6に戻しました。
そしたらサイトは無事復活。
サイトは元通り表示されました。いや、焦った・・・
エラーが起きた原因は「プラグイン」
はい、なぜいきなりエラーが起きたのか?調べてみたらこの原因はプラグインでした。
要するにPHP7に対応していないプラグインがインストールされていて、PHPバージョンをアップした際にエラーを起こしたというわけです。
[aside type=”warning”]ちなみに利用しているテーマがPHP7に対応していない場合も同じ状況に陥る可能性があります。また、ワードプレスのバージョンが4.4未満の場合もPHP7に対応してないので注意。この場合はバージョンを最新に変更しましょう。[/aside]
ちなみに私の場合、DB Cache Reloaded Fixというプラグインが原因でした。
確認してみたら、DB Cache Reloaded Fixは6年以上も更新がされていません(汗
当然これだけの期間更新されていないということは、新しいPHPバージョンに対応してません。
というわけでこのプラグインを削除。
そして削除後に再度PHPバージョンを5.6⇒7に変更すると、今度は問題なくバージョンアップすることができ、サイトも普通に表示されました。
このように、PHPバージョンを変更するときは利用しているプラグイン(テーマもね)がちゃんと変更するPHPバージョンに対応しているか?確認しておかないとエラーが起きる可能性があるってことです。
でも、はっきり言ってプラグインひとつひとつで対応をチェックするの、めんどくさいですよね!
そこでおすすめなのが「PHP Compatibility Checker」というプラグイン。このプラグインを使えば簡単にPHPバージョンの対応を確認することができます。
PHP Compatibility Checkerの使い方
というわけでここからはPHP Compatibility Checkerの使い方を解説します。
まずはインストールからですね。
ワードプレスの管理画面「プラグイン」⇒「新規追加」をクリックし、検索窓に「PHP Compatibility Checker」と入力します。
プラグインが表示されたら「今すぐインストール」をクリック。
忘れず有効化もクリックしておきましょう。
有効化すると「ツール」の中に「PHP Compatibility」という項目が追加されるので、こちらをクリック。
この画面で各プラグインおよび使用しているテーマのPHPバージョン対応がチェックできます。
- 対応しているかチェックしたいPHPバージョンを選択します。PHP7を使いたいなら7.0にチェックですね。
- 「Only scan active plugins and themes」にチェックを入れると現在有効化しているプラグインと、現在利用しているテーマが①で選択したPHPバージョンに対応しているかチェックできます。「scan active plugins and themes」の場合はすべてのプラグイン&テーマをチェックする形ですね。
- ①と②を選択したら、「Scan site」をクリック。スキャンが始まります。
スキャンが完了すると、以下のような結果画面が表示されます。
「Compatible」と出ていれば対応しているので、すべてこの表示ならPHPバージョンを変更しても大丈夫という形です。
しかし以下の様に「Errors」「Warnings」と表示されている場合はバージョンアップは待った方が良いでしょう。
エラーが出ているプラグインを確認し、使っていないものやあまり使わないものであれば削除すれば問題なくバージョンアップできます。
もし、よく使っているプラグインが変更したいPHPバージョンに対応していない場合は、そのプラグインがそのバージョンに対応するのを待つか、代替プラグインを探す必要がありますね。
まとめ
というわけでPHPバージョンを変更した際にエラーが起きる原因と対策をまとめてみました。
PHPバージョンを上げると確かにワードプレスの動作は早くなりますが、利用しているテーマやプラグインが対応してなければエラーが出てしまいます。なので必ずPHPバージョンを上げる前に対応を確認しておきましょう。
一応PHPバージョンを上げる前にすべてのプラグインを停止した上でバージョンを変更し、バージョンアップ後に一つ一つ有効化するという手段もありますが、ハッキリ言ってめんどくさいですし、PHP Compatibility Checkerを使った方がスムーズです。
何にしてもPHPバージョンを変更する場合は事前にプラグインやテーマのチェックを忘れずに!ですね。