1. ホーム
  2. 記事一覧
  3. 【徹底解説】ステータスコード5xxについて詳しく

2022.12.10

【徹底解説】ステータスコード5xxについて詳しく

こちらの記事では500番代のステータスコード(以下、ステータスコード5xx)について解説をします。

ステータスコード5xxはウェブサーバーがリクエスト処理を失敗した事を表します。

このエラーはサーバーが原因となる事が多い為、クライアント側での対処が難しいエラーとなります。その為主要なステータスコードを把握する事でサーバー管理者への連絡などがスムーズに行えます。

その他のステータスコードについては次の記事をご覧ください。 https://envader.plus/article/29

よく見かけるステータスコード5xx(主要なステータスコード)

代表的なエラーとして次のようにアクセスが集中し、過負荷で一時的に処理不能になっている状態があります。

  • 500 Internal Server Error
  • 503 Service Unavailable
  • 504 Gateway Timeout

500 Internal Server Error

500 Internal Server Errorとはサーバー内部で何らかのエラーが発生し、クライアントへ正常なレスポンスを返せないことを表すステータスコードです。

原因として.htaccessの記述誤りやパーミッションの設定ミスなどによるWebサーバーの設定ミスが挙げられますが、500 Internal Server Errorはその他に適切な5xxエラーが見当たらなかった場合に選択をされるため、詳しい原因の特定まで行うのは難しいエラーコードです。

クライアント側での対処・修正は難しいので、サーバー管理者へ連絡を行いましょう。サーバー管理者はまずログの確認を行い、エラーログがある場合は該当箇所の修正をします。Webアプリケーションに問題がある場合は再起動を行いエラーログを確認し、コードの修正を実施します。

503 Service Unavailable

503 Service Unavailableとはアクセス集中などによりサーバーに負荷がかかり、一時的にサービスが利用不可であることを表すステータスコードです。

アクセス集中によりサービスが利用出来なくなることからサーバーダウンと思われがちですが、503エラーはサーバーダウンとは異なり、サーバーダウンを回避する為の予防措置となります。その為サーバーダウン時は全てのWebサイトが閲覧不可となるのに対し503エラーではアクセス制限を受けるのは特定のWebサイトのみとなります。この503エラーが発生する仕組みとしてはサーバーごとに設定したアクセス数(データリクエスト数)が上限を超えた場合に発生します。

一時的なアクセス集中に関しては時間が経ち、アクセス数が減少すれば解消されますが、検索順位上昇などにより一定のアクセス数の上昇が見られる場合はサーバーのプラン変更など、アクセス制限の上限値自体を変更するなどの対処が必要となります。

504 Gateway Timeout

504 Gateway Timeout とはクライアントのリクエストに対してサーバーから規定時間内に応答がなかった事を中継機(ゲートウェイ)が知らせるステータスコードです。

ゲートウェイとは通信プロトコルの違う二者間やネットワーク間の通信を中継する機器やソフトウェアの一種で、異なるプロトコルやアドレス体系、データ形式などを相互に変換し通信できるようにしています。具体的にはメインサーバーが上流サーバーからの応答を待っている間に、タイムアウトを起こしてしまったと考えられます。原因はタイムアウトまでの設定時間が短いことや過負荷やサーバーダウン等サーバー側に問題がある事が挙げられます。

対処法として簡単なのはWebページの再読み込みやネットワーク機器の再起動があります。これらを試してみても直らない場合はプロキシの設定の確認やDNSの設定を見直す事で改善出来る可能性があります。

ステータスコード5xx一覧表

次が様々な5xxステータスコードの一覧です。ファイルの種類によって異なる出力となる503、510などがあるので注意が必要です。

コード番号意味説明
500Internal Server Errorサーバー内部でエラーが発生していることを表します。
501Not Implementedリクエストメソッドにサーバーが対応していない場合に返されます。
502Bad Gatewayゲートウェイとして動作するサーバーが不正なリクエストを拒否したことを表します。
503Service Unavailableサービスが一時的に過負荷やメンテナンスで使用出来ないことを表します。
504Gateway Timeoutゲートウェイとして動作するサーバーが時間内にレスポンスを得られない場合に返されます。
505HTTP Version Not Supportedリクエストに使用したHTTPバージョンにサーバーが対応していないことを表します。
506Variant Also Negotiatesサーバーに内部構成エラーがあることを表します( Transparent Content Negotiation in HTTPで定義されている拡張ステータスコード)
507Insufficient Storageリクエストを処理するために必要なストレージ容量が不足していることを表します。(WebDAVの拡張ステータスコード)
508Loop Detectedリクエスト処理中に無限ループを検出したことを表します。(WebDAVの拡張ステータスコード)
510Not Extended503とほぼ同じでアクセスが集中した場合などに返されます。 両者の違いは503が主に動的1ファイルにアクセスが集中した場合に表示され、510は静的2ファイルにアクセスが集中した場合に表示されます。
511Network Authentication Requiredアクセスをする際に認証が必要な場合に返されます。

注1: 動的ファイル:検索結果など、利用者毎に内容が異なるファイル 注2: 静的ファイル:画像など、すべての利用者で同じ内容のファイル

まとめ

今回はHTTPステータスコード5xxの意味について解説をしました。5xxのエラーはサーバー側に問題があるため、クライアント側での対応が難しいエラーとなります。

主要なステータスコード5xxとして次を学びました。

  • 500 Internal Server Errorはサーバー内部でエラーが発生し、クライアントへ正常なレスポンスが返せない事
  • 503 Service Unavailableはアクセス集中などのサーバー負荷により一時的にサービスが利用できない事
  • 504 Gateway Timeoutはクライアントからのリクエストにサーバーからの反応がなかった事を中継機(ゲートウェイ)が知らせてくれている事

サーバー側の問題であるため、サーバー管理者に連絡するのが解決の第一歩と言えます。サーバー管理者はユーザーから連絡されて気づくのではなく予防的措置を考える必要があります。

エンベーダー編集部

エンベーダーは、ITスクールRareTECHのインフラ学習教材として誕生しました。 「遊びながらインフラエンジニアへ」をコンセプトに、インフラへの学習ハードルを下げるツールとして運営されています。

RareTECH 無料体験授業開催中! オンラインにて実施中! Top10%のエンジニアになる秘訣を伝授します! RareTECH講師への質疑応答可

関連記事