サイトを開いたら「500 Internal Server Error」と表示された。あるいは「502 Bad Gateway」「504 Gateway Timeout」が出ている。これらは似たように見えて、原因の場所がまったく異なります。番号を見れば、自社で対処できる問題か、サーバー会社に連絡すべき問題かが判別できます。この記事では、番号別の切り分けと対処を整理します。
500番台はサーバー側で処理が失敗している状態
まず全体像です。
番号別の意味と原因の場所
| エラー | 意味 | 原因の場所 | 主な連絡先 |
|---|---|---|---|
| 500 Internal Server Error | 処理中に致命的なエラーが発生 | サイト内部(PHP・プラグイン・設定ファイル) | 保守会社・制作会社 |
| 502 Bad Gateway | サーバー同士の通信で不正な応答 | サーバーの内部構成 | サーバー会社 |
| 503 Service Unavailable | 一時的に処理できない | アクセス集中・メンテナンス | サーバー会社 |
| 504 Gateway Timeout | 応答が返る前に時間切れ | 処理の重さ・サーバー負荷 | 両方(処理の重さも要因) |
500は自社サイト側、502と504はサーバー側が主戦場
おおまかに言えば、500は自分たちが直せる可能性が高く、502は自分たちでは直せないと考えてください。504はその中間で、サーバーの負荷と自社サイトの処理の重さの両方が関係します。
まず全ページで発生しているかを確認する
特定のページだけで500が出るなら、そのページに関わる処理に原因があります。全ページで出るなら、サイト全体に影響する設定かプラグインが原因です。管理画面が開けるかどうかも重要な手がかりです。
500エラーの原因は4つに絞れる
最も多く、かつ自社で対処できる可能性があるのが500です。
直前に何をしたかを思い出す
500エラーの大半は、何らかの操作の直後に発生します。以下の心当たりがないか確認してください。
- プラグインを更新した、または新規インストールした
- テーマを更新した、または変更した
- PHPのバージョンをサーバー側で変更した
- テーマファイルやfunctions.phpを編集した
- .htaccessを編集した
- WordPress本体を更新した
原因別の対処
| 原因 | 対処 | 必要なもの |
|---|---|---|
| プラグインの不具合・競合 | 該当プラグインを停止する | 管理画面またはFTP |
| テーマの不具合 | 標準テーマに一時的に切り替える | 管理画面またはFTP |
| PHPバージョンの非互換 | 元のバージョンに戻す | サーバー管理画面 |
| .htaccessの記述ミス | ファイル名を変更して無効化する | FTP |
| PHPのメモリ不足 | 上限値を引き上げる | FTPまたはサーバー管理画面 |
| ファイル編集時の構文エラー | 編集前の状態に戻す | FTP・バックアップ |
管理画面に入れない場合はFTPで対処する
500エラーで管理画面にも入れない場合、FTPでサーバーに接続し、疑わしいプラグインのフォルダ名を変更して無効化します。フォルダ名を変えるだけでWordPressはそのプラグインを認識しなくなり、実質的に停止した状態になります。原因が特定できたら、名前を元に戻したうえで管理画面から正式に対処してください。
エラーの詳細を表示させる方法もある
初期状態では、詳細なエラー内容は画面に表示されません。wp-config.php の設定でデバッグ表示を有効にすると、どのファイルの何行目で問題が起きているかが分かります。ただし訪問者にも表示される設定は避け、ログファイルへ出力する方法を使ってください(出典 WordPress.org Editing wp-config.php)。
デバッグ表示を有効にしたまま公開状態で運用しないでください。サーバーの内部構造やファイルパスが訪問者に見えてしまい、攻撃の手がかりを与えることになります。確認後は必ず元に戻してください。
502が出たら自社では直せないことが多い
502は、サーバーを構成する複数の仕組みの間で通信が失敗している状態です。
まずサーバー会社の障害情報を確認する
502は、サーバー会社側の障害やメンテナンスで発生することが多いエラーです。自社サイトを触る前に、サーバー会社の障害情報ページとSNSアカウントを確認してください。全体障害であれば、できることは復旧を待つことだけです。
時間を置くと自然に復旧することがある
一時的な負荷や再起動の過程で発生している場合、数分から数十分で復旧します。慌てて設定を変更すると、復旧後に別の問題を残すことになります。
継続する場合はサーバー会社に連絡する
数十分経っても復旧しない、かつ障害情報が出ていない場合は、サーバー会社のサポートに連絡してください。連絡時には、発生時刻・対象ドメイン・エラー画面のスクリーンショットを添えると調査が早くなります。
504は処理が重いことが原因のことがある
504は、時間内に応答が返らなかった状態です。
特定の操作でだけ発生するなら自社側に原因がある
バックアップの実行時、大量データのインポート時、プラグインの一括更新時に504が出る場合、処理そのものが重すぎて制限時間に収まっていないということです。この場合は、処理を分割するか、実行時間の上限を引き上げる対応になります。
常時発生する場合はサーバーの性能を疑う
通常のページ表示でも504が出るなら、サーバーの処理能力が不足しているか、データベースに問題があります。アクセスが増えているのに最安プランのまま、という状況では起こり得ます。
データベースの肥大化が影響することもある
リビジョンやスパムコメントが大量に蓄積していると、データベースへの問い合わせに時間がかかります。管理画面の動作が遅い状態が続いているなら、データベースの整理を検討してください。
復旧後にやるべきこと
直って終わりにしないでください。
記録を残す
- 発生日時と復旧日時
- 表示されていたエラーの種類
- 直前に行った作業
- 実施した対処と、効果があった対処
- 問い合わせた先とその回答
同じ症状が再発したとき、この記録があれば復旧までの時間が大きく短縮されます。
停止していた時間の影響を確認する
問い合わせフォームが動作していたか、その間の問い合わせが失われていないかを確認してください。サイトが復旧しても、停止中に届かなかった問い合わせは戻ってきません。
死活監視を導入する
エラーが出ていることに気づくのが、取引先からの指摘だった。この状態が最も損失を生みます。死活監視サービスを設定すれば、停止を検知した時点でメール通知が届きます。無料プランでも5分間隔の監視が可能です。
更新手順を見直す
500エラーの多くは更新作業がきっかけです。バックアップを取ってから1つずつ更新し、都度表示を確認する。この手順を守るだけで、発生率と復旧時間の両方が下がります。
最後に
500番台のエラーは、番号によって原因の場所が異なります。500は自社サイト内部で、直前の作業を戻せば復旧することがほとんどです。502はサーバー会社側の問題であることが多く、まず障害情報を確認してください。504は処理の重さとサーバー負荷の両面から見る必要があります。いずれの場合も、慌てて複数の設定を変更するより、直前に何をしたかを思い出す方が早く解決します。
Web管理では、月額1万円からWordPressサイトの運用保守を代行しています。エラーの原因切り分け、復旧作業、死活監視の設定まで対応可能です。「サイトが表示されなくなった」という緊急のご相談も歓迎します。

