仕組みを知る

500エラーの原因|サーバー側で何が起きているかを切り分ける

500エラーは、サーバー側で処理中に問題が起き、正常な返事を返せなかったことを示すHTTPステータスです。原因候補と閲覧者・運営者の確認順を区別して考えます。

500エラーの原因|サーバー側で何が起きているかを切り分ける

30秒でわかる答え

500エラーは、サーバー側で処理中に問題が起き、正常な返事を返せなかったことを示すHTTPステータスです。500という番号だけで原因を一つに決めることはできないため、閲覧者ができる確認と運営者が見るログ・設定を分けます。

閲覧者ができる確認と運営者が見る場所

入力内容を送信中なら、重複送信に注意してください。 閲覧者ができることは限られます。ページの閲覧中なら、再読み込み、時間を置く、別ブラウザや別回線で確認する、公式のお知らせを見る、といった確認をします。

ユイとピコが、閲覧者側で確認できることと運営者側で見る場所を分けている
500エラーでは、閲覧者が試せることと、運営者がログや設定で確認することを分けます。

運営者なら、次を確認します。

  1. 直前に変更したファイルや設定
  2. アプリケーションログ
  3. Webサーバーやホスティングのエラーログ
  4. データベース接続
  5. 外部サービス連携
  6. アクセス集中やリソース状況

利用者と運営者で見る場所が違うため、「誰が何を確認できるか」を先に分けると対応が速くなります。

運営者側では、500が出た時刻と直前の変更を結びつけることが重要です。デプロイ、プラグイン更新、環境変数の変更、データベース移行、外部APIの障害など、赤いランプの直前に何が変わったかを時系列で並べると、ログを見る範囲を絞れます。利用者へは、復旧作業中か、再送信を避けるべきかを短く案内します。

ユイ

公開チェック中に500エラーが出ました。私のPCが悪いのでしょうか

マコト

500はサーバー側で処理できなかった返事として見るのが出発点だね

ピコ

サーバー図書館の赤いランプを見ながら、確認する場所を分けよう

エラー画面の疑問では、利用者側でできる確認と、サイト運営者が見る場所を分けることが大切です。第13話「Webサーバーは何を返す?」のカウンターの奥で何が詰まったのかを見ます。

500エラーとはどんな状態か

500エラーは、HTTPステータスコードの一つです。404のように「ページがない」とは限らず、プログラム、設定、混雑、連携先など複数の候補があります。

HTTPのお願いと返事は HTTPとは や リクエストとレスポンスとは とつながります。500はレスポンスの番号として、サーバー側の問題を示す大まかな合図です。

ただし、500という番号だけで原因を一つに決めることはできません。赤いランプが点いた場所を見て、ログや設定、直前の変更を確認します。

サーバー図書館の赤いランプを見る

ピコルート・ラボのサーバー図書館では、受付はユイの注文を受け取りました。しかし奥の作業場で本を取り出す途中に棚が詰まり、受付が「正常な返事を出せません」と赤いランプを返しました。

ユイとマコトとピコが、サーバー図書館の奥で処理が止まり赤いランプが点く様子を見ている
500エラーは、リクエストが届いたあと、サーバー側の処理で正常な返事を返せない状態として見ます。

ユイ

サーバーには届いているけれど、奥の処理で止まっているんですね

マコト

そう。だから利用者の端末だけを疑わず、サーバー側の確認へ進む

たとえでは作業場ですが、実際にはアプリケーション、Webサーバー、データベース、外部API、権限設定などが関係する場合があります。

500エラーの主な原因候補

原因候補は幅があります。代表的には次のようなものです。

  • アプリケーションのプログラムエラー
  • 設定ファイルの記述ミス
  • データベース接続の失敗
  • 権限やファイル配置の問題
  • 外部APIや決済サービスなど連携先の失敗
  • アクセス集中や一時的なリソース不足
  • 直前の更新やデプロイの影響

Webサーバーがどんな係なのかは Webサーバーとは で確認できます。500はサーバー側の大きな合図であり、どの部品で止まったかはログや変更履歴を見ないと分からない場合があります。

404・403・500の違いと注意点

404、403、500は混ざりやすい番号です。

番号大まかな意味見る場所
403権限がなく見せられないログイン、権限、アクセス制限
404指定ページが見つからないURL、リンク切れ、削除、ルーティング
500サーバー側で処理できないログ、設定、プログラム、連携先

404の詳しい見方は 404とは が代表例です。500では、再読み込みを続けるだけで直ると決めつけず、送信処理中なら二重送信にも注意します。

ミニクイズでHTTPエラーの確認ルートへ進む

Q1. 500エラーはどの側の問題を示しやすいですか?

A. サーバー側で処理できなかったことを示しやすいHTTPステータスです。

Q2. 500の原因はアクセス集中だけですか?

A. それだけではありません。プログラム、設定、データベース、連携先なども候補です。

Q3. 404と500の違いは?

A. 404は指定ページが見つからない、500はサーバー側で処理できない状態です。

ミニワーク:まず誰が何を確認する?

次の場面で、利用者側と運営者側の確認を分けてみましょう。

  • 問い合わせ送信後に500が出た
  • サイトのトップだけ500になる
  • 特定の商品ページだけ500になる
  • 公開直後から全ページで500になる

答えの例として、利用者は再送信に注意しながら時間を置き、運営者へ連絡します。運営者は直前の変更、ログ、該当ページのデータ、サーバー設定を確認します。

LAB WHITEBOARD

自分の言葉で説明してみよう

「500エラーをサーバー側の処理失敗として理解し、閲覧者側でできる確認と運営者側で見る場所を切り分けられるようになる。」を、いまの自分の言葉で一文にしてみてください。途中の説明でも大丈夫です。

編集部の実践ガイド

ウイルス対策ソフトの考え方と選び方

対策が必要な場面と、ソフトを足すか標準機能で足りるかの判断軸を整理します。

VPNは必要か+初心者向けの選び方

公共Wi-Fiを使う場面では、VPNの必要性も合わせて確認できます。