WordPressでPHPのバージョンアップ後、エラーで見れなくなった場合
PHPのバージョンアップ後に、「このサイトで重大なエラーが発生しました」
PHPを7.3から7.4や8.0にバージョンアップしたら、Wordpressがあるコンテンツが「このサイトで重大なエラーが発生しました」と表示されて、サイトが閲覧できなくなりました。バージョンアップ前のPHPのバージョンに戻してもサイトが閲覧できないままで、どうしようかと思いましたが、解決方法がありましたので、紹介します
「リカバリーモード」でプラグインを無効にする
上記のように、サイトが閲覧できなくなると、管理者宛にメールが届いている場合があります。
そのメールの下部にエラーの原因もありますので、そのエラーの原因を確認するとはMemcached に関するプラグインが原因でした。
プラグインを無効にすれば、閲覧できる状態になりそうなので、メール内にある「リカバリーモード」でアクセスする必要があります。URLのリンクがあるので、そちらにアクセスします。
リカバリーモードで管理画面にアクセスしたら、バージョンアップしたら対応していないプラグインをありますので、そちらを無効にすればサイトは閲覧可能になりました
CUI環境でプラグインを無効にする
リカバリーモードのURLにアクセスしてログインしても「このサイトで重大なエラーが発生しました」に戻ってしまう場合あります。その場合は、SSHでログインしてプラグインがあるディレクトリをリネームすると、プラグインを一括で無効化できますので、リカバリーモードでの管理画面にアクセスでき場合は、CUI環境で対応してもいいかと思います。
SSHでのCUI操作を紹介していますが、SSHを利用できない場合はFTPやSCPでダウンロードして、プラグインのディレクトリリネームして対応もできます
1.プラグインがあるディレクトリをリネームします
# wordpressがインストールされているディレクトリに移動します $ cd /var/www/html/wordpress # 「wp-content/plugins/」のディレクトリをリネームします $ mv wp-content/plugins wp-content/plugins_bak
2.WordPressにあるWEBページにアクセスして、エラーが無いか確認します。また管理画面にアクセスできることも確認します
3.WEBページが閲覧できたら、以前にインストールしているプラグインが原因ですので、エラー原因になっている以外のプラグインを「wp-content/plugins/」にコピーしていきます
4.「wp-content/plugins/」がリネームして無くなっているので、作成します
# 「wp-content/plugins/」を作成します $ sudo mkdir wp-content/plugins/ # 「wp-content/plugins/」の所有者をApache等に変更します $ sudo chown apache:apache wp-content/plugins/
5.以前のプラグインをコピーしていきます。
# プラグインの内容を確認します $ ls wp-content/plugins_bak/ akismet classic-editor index.php wordpress-importer amp crayon-syntax-highlighter mw-wp-form wordpress-ping-optimizer boxers-and-swipers google-sitemap-generator pixabay-images # 個別にコピーしていきます $ sudo cp -pr wp-content/plugins_bak/akismet wp-content/plugins/
6.コピー後に、プラグインを有効にしてWEBページが閲覧できたら、そのプラグインは問題ないので、次々へとコピーしていきます。
7.エラー原因となるプラグインをコピーした場合は、WEBページは閲覧できないので、そのプラグインを「wp-content/plugins」にコピーしないようにします
8.エラー原因以外のプラグインをコピーできたら、エラーになったプラグインの対応は終わります
ディスカッション
コメント一覧
まだ、コメントがありません