先日の話ですが、お仕事をよくくれる方から、
『うちのWordpressが真っ白になっちゃったよ!!ヽ(`Д´#)ノ』
というご連絡をいただきまして。
んで、そちらのサイトにアクセスしてみると、確かに画面真っ白でございました。
ログイン画面も真っ白でログイン出来ない状態。
『どうしよーヽ(`Д´#)ノ これじゃあなにも出来ないよーヽ(`Д´#)ノ』
と言われてしまいましたので、なんとかしてあげたくて、
『とりあえず見てみますねー』と言いまして、色々といじってみました。
んで、結果的にあるプラグインを停止したことでこの状況を躱すことが出来たのですが……
今回はその軌跡を当方のテストサーバーで再現してみようかと思いまして。
ちなみに状況の再現は不可能でした。なぜ(;・∀・)
まぁいいけど。
というわけで、行った作業は以下になります。
- WordPressをデバッグモードに移行する。
- すべてのプラグインを強制的に停止する。
- 停止したプラグインを一つ一つ有効化して犯人を突き止める
こんな感じ。特にデバッグモードとプラグインの停止について触れようかと。
1.Wordpressをデバッグモードに移行する。
まず真っ白になってて何も表示されないということは、
原因として『何かしらエラーが起こっている』ということが考えられます。
そこで、Wordpressをデバッグモードにしてあげると、
エラーメッセージを表示してくれまして。その結果、
『こんなエラーが起こってるよ!!』というのがわかります。
デバッグモードにするには、wordpressのディレクトリにある『wp-config.php』の、
define('WP_DEBUG', false);
を
define('WP_DEBUG', true);
にしてあげるとよいです。
というわけでやってみたのですが、相変わらず真っ白でした。あれ?(´・ω・`)
2.すべてのプラグインを強制的に停止する。
次にやったのはプラグインの全停止です。
『管理画面にすら入れないのにどうやってとめるんよ?(´・ω・`)』
と一瞬思われるかもしれませんが……まぁやってみます。
まず前提として、これだけのプラグインを使ってたとします。
そしたら、ftpでもsshでもターミナルから直打ちでも何でもよいので、
『/(WordPressのディレクトリ)/wp-content/』にある、
この『plugins』フォルダを、
なんでも良いのでリネームしてあげました。
そうすると、すべてのプラグインを強制的に停止させることが出来ます。
実際に管理画面のプラグインのページに行くと、こうなってます。
ちなみにこの段階で管理画面にログインできた場合、問題は確実にプラグインです。
ここで再度、先ほどリネームした『plugins』ディレクトリを元の名前に戻してあげると……
こんな感じで、プラグインを有効化出来るようになりますので、
一つ一つ有効化して、原因になっているプラグインを特定してあげると良いです。
確認していった結果、どうもJetpackが原因だったらしく、
Jetpackを有効化すると真っ白、切ってあげると復活しました。
実際にJetpackの公式ページのレビューに行くと、
『4.0にしたらクラッシュ……4.0.2にしたらクラッシュ……』
『俺のサイトにこのプラグイン入れたらクラッシュしたよ……』
『危険だ!! アップデートしたはいけない!!』
的な阿鼻叫喚ともいえる熱い叫びが書き込まれています。
(すべて管理人のいい加減な翻訳なので合ってるかどうかは察してくださいまし……)
とはいえ、その真っ白になったお客さんのサイトは、
Wordpressのバージョンは4.5でして、Jetpackは4.0.2でした。
Jetpackの停止した瞬間にハゲカツラを装着した加藤茶のように生き生きとサイトを表示したので、
やはりJetpackが原因だろうと思います。
ちなみに、本当かどうか確かめるため、
当方のテストサーバーのWordpressを4.5にアップデートし、
Jetpackを突っ込んでみました。
ですが特に問題なく稼働しまして、ちょっと拍子抜けでした(´・ω・`)
一応、WordpressとJetpackのバージョン、
使っているプラグイン、使っているテーマなどはすべて合わせたはずなのですが……
何か違いがあるんですかねぇ……(;・∀・)
ちなみに今回ご紹介した、
- WordPressをデバッグモードにする
- プラグインを強制的に停止させる
この方法は、Wordpressを扱ってる人の場合は知っておいて損はないと思いますぃ。