※本ページにはプロモーション(広告)が含まれています
Webサーバー内部で想定外の問題が発生したことを示すエラー。閲覧者ではなく、サーバー側の不具合が原因。
詳しい解説
500 Internal Server Errorは、HTTPステータスコードの『5xx系(サーバーエラー)』の代表格で、『サーバー側で予期せぬ内部エラーが発生し、リクエストを処理できなかった』ことを示します。閲覧者側で何か操作を誤ったわけではなく、サイト運営者・サーバー管理者が対処すべき問題である点が、404などのクライアントエラーとの決定的な違いです。
500エラーの原因はサーバー側で多岐にわたります。①PHP・Python・Node.jsなどのプログラムのバグ: 無限ループ、未処理の例外、データベース接続失敗。②サーバーリソース不足: メモリ不足、CPU使用率100%、同時接続数上限超過。③設定ファイルの不備: .htaccessの記述ミス、nginx/apacheの設定エラー。④ファイルパーミッションの問題: 実行権限のないスクリプトを実行しようとした。⑤データベース障害: MySQLがダウンしている、接続プールが枯渇。⑥外部API依存先の障害: Stripe・SendGrid等が応答せず、それを呼び出すサーバーもエラーになる。
他の5xxエラーとの違いは次のとおりです。500は『原因が特定できない汎用エラー』、502は『ゲートウェイの先のサーバーが異常応答』、503は『サービスが一時的に利用不可(メンテナンス・過負荷)』、504は『ゲートウェイタイムアウト』。特に502と503は、負荷集中時やメンテナンス時によく見られます。
閲覧者側の対処は限定的ですが、次のことが試せます。①数分〜数時間待ってから再アクセス、②ブラウザのキャッシュ・Cookieクリア、③別の端末・ブラウザで確認、④サイト運営者のTwitter等で障害告知を探す、⑤Downdetectorで大規模障害かチェック。
WordPressサイト運営者でよく遭遇するケースは、プラグイン・テーマの更新直後や、多数のアクセス集中時、PHPメモリリミット不足で発生する500エラーです。対処としては、wp-config.phpに `define('WP_DEBUG', true);` を追加してエラーログを確認、FTPで最近更新したプラグインを無効化(フォルダ名リネーム)、.htaccessを初期化、PHPメモリリミットを256MB以上に引き上げ、が定番の順序です。
レンタルサーバーでは、エラーログが管理画面から閲覧できることが多く、500エラー発生時にはまずログで原因行を特定するのが最短の解決ルートです。
自分のWordPressブログで新しいプラグインをインストールして有効化した瞬間、サイト全体が『500 Internal Server Error』になる場面を想像してください。管理画面にもアクセスできない場合は、FTPで `wp-content/plugins/` フォルダの中の該当プラグインフォルダ名をリネーム(例: plugin → plugin_off)すると、WordPressがそのプラグインを自動的に無効化するため、サイトが復旧します。その後、管理画面に入ってプラグインを削除または別バージョンに差し替えれば完了です。
別の呼び方
Internal Server Error
サーバー内部エラー
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!