WordPressでプラグインをアップデートしただけなのに。管理画面にアクセスできなくなっちゃった。「このページは動作していません HTTP ERROR 500」とエラーメッセージが表示されてどうにもなりません…。
ということがありました。
わたしのケースでは解決することができました。
参考として記録に残しておこうと思います。
原因
プラグイン「auto-post-thumbnail」の動作不良(根本原因は未調査)
対応
1.エラーログを見て問題を起こしているプラグインを突き止める
2.FTPクライアント(Transmit)でサーバーにログインする
3.WordPressのインストールしてあるディレクトリを開く
4.wp-content/pluginsディレクトリに移動する
5.プラグインのディレクトリ名をリネームする
例)auto-post-thumbnail → mukou-auto-post-thumbnail
以上の対応によりWordPress本体から問題のあったプラグイン「auto-post-thumbnail」が管理対象から外れたことで、巻き込み異常がなくなり、管理画面へもログインできるようになりました。
経緯
WordPressのサイトをたくさんつくりすぎてしまって、つくったことを忘れてしまって放置してしまったサイトがいくつかあります。
それらのサイトはメンテナンスがされずプラグインはおろかWordPress本体のバージョンアップもされないまま放置されていました。さすがにそれはセキュリティ的にまずいということで、過去作ってきたサイトをすべて棚卸し総点検しようとなったわけであります。
作業は順調に進んでいました。
重要なサイトは優先的に対応してあとは細かなものたちのみ。
途中まではしっかりと
①バックアップを取る
②ローカルにダウンロードする
という手順を踏んでいたのですが、なんのトラブルも起こることなく順調だったため次第に面倒になり省くように。
プラグイン更新ポチポチ
WordPress更新ポチポチ
今回も無事アップデート完了〜♪
のハズだったのですが
とあるサイトでプラグインを更新したら問題発生。
プラグインの更新が終わったあとに管理画面に戻ろうとしても戻れません。
このページは動作していません
●●●(URL) では現在このリクエストを処理できません。
HTTP ERROR 500
と表示されます。
何回やってもダメです。管理画面に入れなくなってしまいました。
幸か不幸かブログそのものは見られるのでこのまま放置でもいいかな?とも思ったのですが、管理画面に入れない=WordPressのバージョンアップができない=セキュリティホールが見つかったら乗っ取られて、もしかしたらこのブログ以外にも影響が及ぶかもしれない…
という考えから放置はせずきちんと解決しようということに。
さて管理画面に入れない以上、原因をどうやって突き止めましょうかね。
やっぱレンタルサーバーのログかな。
レンタルサーバーでエラーログをダウンロード!
わたしの使っているレンタルサーバーは「スターサーバー」です。
エラーログを入手すべくスターサーバー管理ツールを開きます。
ログを取得する直前に「問題のサイトの管理画面」にアクセスしておきしょう。
こうすることで調査しやすくなります。こうすればエラーログの一番最後に「それっぽいエラー」が出ていることが期待できるからです。エラーログの途中にも出てるでしょうが上から下まで見たりキーワードを考えながら検索すたりするのは面倒です。一番下にログを出させるのが早くて確実。
さてエラー「HTTP ERROR 500 このページは動作していません」を確認してから、エラーログのダウンロードです。
エラーログをチェック!とあるプラグインでエラーが出てるのを発見!
error_logの中身
関係ありそうな箇所を抜き出したのがこちら。
[Sun Jun 21 16:46:33.368905 2020] [fcgid:warn] mod_fcgid: stderr: PHP Fatal error: Uncaught Error: Call to undefined function WBCR\Factory_Feedback_102\wp_doing_ajax() in /●●●●●/●●●●●/●●●●●●/wp-content/plugins/auto-post-thumbnail/libs/factory/feedback/includes/class-base.php:66, referer: ●●●●●●
[Sun Jun 21 16:46:33.368938 2020] [fcgid:warn] mod_fcgid: stderr: Stack trace:, referer: ●●●●●●
[Sun Jun 21 16:46:33.368941 2020] [fcgid:warn] mod_fcgid: stderr: #0 /●●●●●/●●●●●/●●●●●●/wp-content/plugins/auto-post-thumbnail/libs/factory/feedback/boot.php(46): WBCR\Factory_Feedback_102\Base->__construct(Object(WAPT_Plugin)), referer: ●●●●●●
[Sun Jun 21 16:46:33.368944 2020] [fcgid:warn] mod_fcgid: stderr: #1 /●●●●●/●●●●●/●●●●●●/wp-includes/plugin.php(496): Wbcr_Factory425_Plugin->{closure}(Object(WAPT_Plugin)), referer: ●●●●●●
[Sun Jun 21 16:46:33.368948 2020] [fcgid:warn] mod_fcgid: stderr: #2 /●●●●●/●●●●●/●●●●●●/wp-content/plugins/auto-post-thumbnail/libs/factory/core/includes/class-factory-plugin-abstract.php(595): do_action(‘wbcr_factory_fe…’, Object(WAPT_Plugin)), referer: ●●●●●●
[Sun Jun 21 16:46:33.368953 2020] [fcgid:warn] mod_fcgid: stderr: #3 /●●●●●/●●●●●/●●●●●●/wp-content/plugins/auto-post-thumbnail/libs/factory/core/includes/class-factory-plugin-abstract.php(114): Wbcr_Factory42 in /●●●●●/●●●●●/●●●●●●/wp-content/plugins/auto-post-thumbnail/libs/factory/feedback/includes/class-base.php on line 66, referer: ●●●●●●
[Sun Jun 21 16:46:37.440932 2020] [fcgid:warn] mod_fcgid: stderr: PHP Fatal error: Uncaught Error: Call to undefined function WBCR\Factory_Feedback_102\wp_doing_ajax() in /●●●●●/●●●●●/●●●●●●/wp-content/plugins/auto-post-thumbnail/libs/factory/feedback/includes/class-base.php:66, referer: ●●●●●●
[Sun Jun 21 16:46:37.441022 2020] [fcgid:warn] mod_fcgid: stderr: Stack trace:, referer: ●●●●●●
[Sun Jun 21 16:46:37.441029 2020] [fcgid:warn] mod_fcgid: stderr: #0 /●●●●●/●●●●●/●●●●●●/wp-content/plugins/auto-post-thumbnail/libs/factory/feedback/boot.php(46): WBCR\Factory_Feedback_102\Base->__construct(Object(WAPT_Plugin)), referer: ●●●●●●
[Sun Jun 21 16:46:37.441048 2020] [fcgid:warn] mod_fcgid: stderr: #1 /●●●●●/●●●●●/●●●●●●/wp-includes/plugin.php(496): Wbcr_Factory425_Plugin->{closure}(Object(WAPT_Plugin)), referer: ●●●●●●
[Sun Jun 21 16:46:37.441055 2020] [fcgid:warn] mod_fcgid: stderr: #2 /●●●●●/●●●●●/●●●●●●/wp-content/plugins/auto-post-thumbnail/libs/factory/core/includes/class-factory-plugin-abstract.php(595): do_action(‘wbcr_factory_fe…’, Object(WAPT_Plugin)), referer: ●●●●●●
[Sun Jun 21 16:46:37.441062 2020] [fcgid:warn] mod_fcgid: stderr: #3 /●●●●●/●●●●●/●●●●●●/wp-content/plugins/auto-post-thumbnail/libs/factory/core/includes/class-factory-plugin-abstract.php(114): Wbcr_Factory42 in /●●●●●/●●●●●/●●●●●●/wp-content/plugins/auto-post-thumbnail/libs/factory/feedback/includes/class-base.php on line 66, referer: ●●●●●●
auto-post-thumbnail とでてますね…
まさかお前が犯人だったとは…
なぜこのようなエラーを引き起こしたのか
どうしたらこのエラーを解消して使い続けられるのかについて
知りたいところですが、いまは復旧優先です。
とりあえず疑わしくは無効化せよの原則を適用したいと思います。
あれ?
管理画面に入れないのにどうやってこのプラグインを無効化したらいいんだ?
ググったところこんな記事を見つけました。
方法としては軽くふたつあるようです。
1)DBで変更する
2)プラグイン名のリネーム
1つ目は面倒そうなので2つ目の方法でトライしてみることにします。
プラグイン名のリネーム FTPクライアントで実施
プラグイン名をリネームするってどうやって?
レンタルサーバーの管理ツールからも行えそうでしたがあまり使い慣れていないため、使い慣れたFTPクライアントでやることとしました。
わたしが使っているのはTransmit
とりあえずログインします
wp-content/plugins へ移動します
いました
こいつです犯人は
疑わしきは・・・こうじゃ
[mukou-]と付け足してやりました。元々の名前とは別物にしてやればいいので「mukou」である必要はありません。
とにかくこれで無効になったはず。
果たしてこれで動くようになるのだろうか
いままではダッシュボードのアイコンを押したらエラーになってたんだけど。
ぽちっ
やったー!
復活したよ!
救われた!よかった!助かった!
今回はどうにかなったから良かったけど
バックアップはちゃんと取らないといけないですね。
以上、プラグインアップデートで管理画面に入れなくなったことへの対処方法のお話でした。
コメント