WordPressサイトが突然表示されなくなり、「500 Internal Server Error」と表示された経験はありませんか?
これはサーバー内部で何らかの処理が失敗したことを示すエラーで、原因がさまざまであるため、初心者にとっては非常に対処が難しいトラブルの一つです。
しかし、冷静に原因を特定し、正しい手順で対応すれば、サイトを元通りに復旧させることは十分可能です。
本記事では、WordPressで500エラーが発生する主な原因と、その具体的な対処法を分かりやすく解説します。サイト運営者が知っておくべき基本知識として、ぜひ参考にしてください。
500エラーとは?
「500 Internal Server Error」は、Webサーバーがユーザーのリクエストを処理できなかったことを示すHTTPステータスコードです。WordPressの場合、テーマやプラグイン、サーバー設定などの影響で処理が止まり、エラー画面が表示されることがあります。サーバーの内部処理に起因しているため、ブラウザ上でのエラーメッセージだけでは正確な原因を突き止めることができず、ログの確認や設定ファイルの見直しが必要になります。
主な原因一覧(箇条書き①)
- プラグインやテーマのエラー
- .htaccessファイルの破損
- PHPメモリ制限の不足
- ファイルやフォルダのパーミッション設定ミス
- サーバーの一時的な不具合
プラグインやテーマのエラー
WordPressで多く利用されているプラグインやテーマですが、互換性のないものやアップデート直後の不具合により、500エラーを引き起こすことがあります。特にfunctions.phpやカスタムコードを追加している場合は、記述ミスが原因となることも。FTPで”wp-content”内の”plugins”または”themes”ディレクトリを一時的にリネームし、どちらが原因かを切り分けていくと効果的です。
.htaccessファイルの破損
.htaccessはWordPressの動作に不可欠なファイルであり、リダイレクトやパーマリンクの設定を担っています。このファイルが破損すると、サーバーが指示通りに処理できず、500エラーが発生します。対処法としては、一時的に.htaccessを削除し、管理画面の「パーマリンク設定」を再保存することで新たに再生成できます。
PHPメモリ制限の不足
WordPressはPHPベースで動作するため、PHPのメモリ使用量が制限を超えると500エラーが発生します。大量の画像やプラグイン、高機能なテーマを使用している場合は、メモリ不足が起こりやすくなります。”wp-config.php”に以下のコードを追加し、使用可能なメモリを拡張しましょう:
define('WP_MEMORY_LIMIT', '256M');
ファイルやフォルダのパーミッション設定ミス
WordPressを構成するファイルやフォルダには、正しいパーミッション(アクセス権限)が必要です。設定が誤っていると、サーバーが必要なファイルを読み込めず、500エラーを出すことがあります。通常、ファイルは「644」、フォルダは「755」に設定されている必要があります。FTPソフトで確認・修正しましょう。
サーバーの一時的な不具合
レンタルサーバーの一時的な障害やメンテナンスによって、WordPressが正常に動作せず500エラーが出る場合もあります。この場合は、時間をおいて再度アクセスすることで解消されることがあります。契約中のサーバー会社の障害情報を確認しましょう。
サーバーのエラーログを確認する
エラーの具体的な原因を突き止めるには、サーバーのエラーログを確認するのが最も確実です。多くのレンタルサーバーでは、コントロールパネルにエラーログ表示機能があります。エラーの発生時刻と内容を確認し、それに基づいて修正作業を行いましょう。
デバッグモードの活用
WordPressのwp-config.phpに以下の記述を追加して「WP_DEBUG」を有効化すると、画面上にエラーの詳細を表示できます。表示を制御しながらログ出力も可能です。
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
出力されたエラーログは「wp-content/debug.log」に保存されるため、そこから原因を特定することが可能です。
バックアップから復元する
もし復旧が難しい場合は、事前に取得していたバックアップからサイトを復元するという選択肢もあります。BackWPupやUpdraftPlusなどのバックアッププラグインを使っていれば、数クリックで元の状態に戻すことが可能です。定期的なバックアップが、こうした緊急時に大きな助けとなります。
セキュリティソフトやWAFの影響
一部のサーバーでは、Web Application Firewall(WAF)が誤検知を起こし、特定の操作をブロックして500エラーを引き起こすことがあります。サーバー管理画面で一時的にWAFを無効化し、挙動を確認するのも有効な対処方法です。
FTPソフトを使った復旧作業
WordPressの管理画面にアクセスできない場合でも、FTPソフトを使えば直接ファイルにアクセスし、テーマやプラグインの無効化、設定ファイルの修正が可能です。FileZillaなどの無料ツールを使って、迅速な復旧対応を行いましょう。
主な原因のまとめ(箇条書き②)
- プラグイン・テーマの不具合
- .htaccessファイルの異常
- メモリリミットの不足
- サーバー障害
- パーミッション設定のミス
対処方法一覧(表)
原因 | 対処方法 | 参考URL |
---|---|---|
プラグインやテーマのエラー | plugins/themesフォルダを一時的にリネーム | https://wordpress.org/documentation/article/faq-troubleshooting/ |
.htaccessの破損 | ファイル削除後にパーマリンク設定を再保存 | https://wordpress.org/documentation/article/htaccess/ |
PHPメモリ不足 | wp-config.phpでWP_MEMORY_LIMITを設定 | https://wordpress.org/documentation/article/editing-wp-config-php/ |
パーミッション設定ミス | FTPで正しい権限に変更(644/755) | https://wordpress.org/documentation/article/changing-file-permissions/ |
サーバー障害 | サーバー会社の障害情報を確認 | 各レンタルサーバーの公式サイト |
専門業者への相談も視野に
上記の対処法を試しても復旧しない場合は、専門のWordPress修復業者に相談するのが確実です。原因の調査から修正、セキュリティ対策まで対応してくれる業者であれば、安心して任せることができます。