「WP」画面が真っ白に・・ 「Warning: Cannot modify.. 」と表示される場合の対処法!

whitecat

めちゃログです。今回違う内容の記事をお送りする予定でしたが、急きょ予定を変更して「WordPress/デバッグモードの使い方」をお届けします。

SPONSORED LINK

photo by calipizazz

▼この記事の目次

  1. 画面が真っ白に・・
  2. 「WP_DEBUG」デバッグモード
  3. 「Warning: Cannot modify header information」と表示される場合
  4. 「やっと解決!」その原因は?
  5. この記事のまとめ

画面が真っ白に・・

d
これは早いところなんとかせねば。管理画面にもログインできないのでFTPソフトを立ち上げる必要があります。FTPソフトがあればこのような状況でもFTPサーバーにアクセスする事ができるので原因を解明して修正する事ができます。

とりあえず今回こうして記事にしてみましたが、内心結構あせっています。functions.php」を更新して真っ白になった場合の対処法なら以前記事にした覚えがありますがこんな事は始めてです。

「少し前にプラグインを更新したのでそれが原因だったのだろうか?! 他に原因と思えるのはないし。」

と考えつつ、まずはこの原因を突き止めてみることにしましょう。

「WP_DEBUG」デバッグモード

こんな時はデバッグモードの出番です。デバッグモードはソフトウェア開発の場でも使用されているものでその用途はバグ、エラーのチェックに使われます。WordPressはPHPでも作られているのでPHPのデバックモードを使用するわけです。
WordPressでデバッグモードを使用するための記述は「wp-config.php」ファイル内にあります。

define('WP_DEBUG', false)

//このように変更 デバックモードが有効になる
define('WP_DEBUG', true)

変更したら保存してファイルをアップロードします。この状態でWordPress管理画面にアクセスすると原因が一覧表示されます。

ちなみに「Google Authenticator」で2段階認証を有効にしていて、デフォルトのログイン画面とURLが違う場合はデバックモードが表示されないみたいです。なのでデフォルトの管理画面のURLへアクセスします。

▼エラー内容が一覧表示される
d2

「う~ん・・ 」

内容を見てもいまいち意味がわかりません。焦っているのでゆっくり調べるという感じでもないですし。

wpXとプラグインの相性が原因なのか数時間前に更新したプラグインしか考えられないのでそのプラグインを無効にしてみて様子を見る事に。

無事復旧です!

d3

「Warning: Cannot modify header information」と表示される場合

この話にはまだ続きがありました。

デバッグモードを無効にしてもWordPressのログイン画面で「Warning: Cannot modify header information」と表示されるのです。ログインした状態だともっと色々エラー表示が出ています。

pluggable.phpというファイル

まずは原因究明です。無効にしたのになぜか表示されているデバッグモードのエラー内容を見ると、ほとんどの行に「wp-includes/pluggable.php」というファイル名が書いてあります。

この「pluggable.php」とは一体?! ファイルの中身をパッと見てみましたがよくわかりません。

有効化されているプラグインのファイルの後に読み込まれる。プラグインによって書き換えられる事ができるというファイル。ざっくりこんな感じでしょうか。

原因はpluggable.phpファイルがプラグインにより書き換えられてしまったか。間違った操作をしてしまったかどちらかなのでしょうか。原因はまだ不明ですが、早速解決法を発見しました!

「php.ini」のoutput_bufferingの設定をOFFからONにすればいいようです。これであっさり解決するはず・・

【php.ini】

PHPのプログラムの全体の動きを設定するファイル

ですがwpXからは設定変更できないようです。「php.ini」にoutput_bufferingの項目がありません。とすると違う方法になります。

「やっと解決!」その原因は?

あっさり解決したかと思いきやそうはいかないようです。ここで一先ず作戦を練り直す必要があります。

coffee

▼何を選ぶ?

1. 「php.ini」を直接編集する
2. WordPressファイルを入れなおす
3. 他に方法があるか調べる

とりあえず1番の方法が出来れば手っ取り早かったのですがwpXではやはり用意されている項目の中でしか変更できないようで。レンタルサーバーによっては直接編集できるものもあるようです。
2番は最後の手段という事で、3番の他の方法があるか調べてみる事にします。調べたら結構すぐに解決方法がわかりました。

d4

wp-config.phpの編集 | WORD PRESS Codex日本語版

FTPサーバーでファイルを保存する時にUTFで保存しないようにとの事です。普段メモ帳で保存している設定がそのまま反映されたのか、筆者のFTPの使い方がなってなかったのかのどちらかでしょう。

デバッグモードで使用した「wp-config.php」を「UTF→ANSI」の形式で保存し直したら完全解決しました!

この記事のまとめ

久々のWordPress関連記事でした。さすがに今回は冷や汗もんでしたがとりあえず解決したのでホッとしました。おそらく.. 3、4時間はブログが真っ白の状態でした。

結局今回の根本的な原因は「プラグイン」と「FTPサーバーの保存方法」この二つです。デバッグモードにしなければもっと早く解決していたという結果に。

「Warning: Cannot modify header information」と表示されて困っている場合は「UTF→ANSI」に変更すれば直る事もあるかもしれません。

関連記事




この記事が気に入ったら
いいね!しよう

最新情報をお届けします

Twitterでめちゃログをフォローしよう!