すべてのHTTP応答には、リクエストの処理方法に関する明確な番号情報を通知するステータスコードが付属しています
HTTPステータスコードは、サーバーからクライアントに送信されるHTTP応答の最初の行です。
このリストは、サーバーが特定のステータスコードを送信した理由を調べて、それが何を意味するのかを調べようとしている場合、またはサーバーを構築していて、返される完全なステータスコードを参照している場合に役立ちます。
ステータスコードは、3桁の数字と簡単な説明で表されます。
番号の最初の桁は、応答グループ。
5つのグループがあります:
1xx
:情報応答-リクエストが受信され、理解されたことを示します2xx
:成功した応答-クライアントによって要求されたアクションが受信され、理解され、受け入れられたことを示します3xx
:リダイレクト-クライアントがリクエストを完了するために追加のアクションを実行する必要があることを示します4xx
:クライアントエラー-クライアントが原因と思われるエラーが発生したことを示します5xx
:サーバーエラー-サーバーでエラーが発生したことを示します
投稿の残りの部分では、すべての有用なステータスコードをリストします。
(WebDAVのような、テクノロジー固有のものと、ほとんど使用されないものを削除しました)
情報提供
ステータスコード | 説明 |
---|---|
100続行 | サーバーはリクエストヘッダーを受信し、クライアントはリクエスト本文の送信に進む必要があります(本文を送信する必要があるリクエストの場合、たとえばPOSTリクエスト)。不適切なヘッダーのためにリクエストが拒否された後にサーバーに大きなリクエスト本文を送信すると、非効率になります。サーバーにリクエストのヘッダーをチェックさせるには、クライアントはExpect:100を送信する必要があります-最初のリクエストのヘッダーとして続行し、本文を送信する前に応答として100Continueステータスコードを受信します。クライアントが403(禁止)や405(メソッドは許可されていません)などのエラーコードを受け取った場合、クライアントはリクエストの本文を送信しないでください。応答417Expectation Failedは、サーバーが期待値をサポートしていないことを示しているため、Expectヘッダーなしで要求を繰り返す必要があることを示します(これは、たとえばHTTP / 1.0サーバーの場合です)。 |
101スイッチングプロトコル | クライアントはサーバーにプロトコルを切り替えるように要求し、サーバーはそうすることに同意しました。RFC 7231#6.2.2を参照してください |
成功した応答
ステータスコード | 説明 |
---|---|
200 OK | これは、HTTPリクエストが成功した場合の標準的な応答です。 |
201作成済み | 通常、POSTリクエストへの応答。リクエストが完了し、新しいリソースが作成されました。 |
202承認済み | リクエストは処理のために受け入れられました。実際の処理とその結果については何も言われていません。これは別のサーバーで発生するか、バッチ処理される可能性があります。 |
203信頼できない情報 | 元のサーバーは200を返し、クライアントとサーバー間の変換プロキシがペイロードを変更しました |
204コンテンツなし | サーバーはリクエストを正常に処理しましたが、コンテンツを返していません。 |
205コンテンツのリセット | サーバーはリクエストを正常に処理しましたが、コンテンツを返していません。 204応答に似ていますが、サーバーはクライアントがドキュメントビューをリセットすることを要求します(たとえば、フォームをクリアするために使用されます) |
206部分的なコンテンツ | に応じてRange クライアントからの要求に対して、サーバーは部分的なコンテンツ応答を送信します。See RFC 7233#4.1 |
リダイレクション
ステータスコード | 説明 |
---|---|
301恒久的に移動 | これ以降のすべてのリクエストは、指定されたURIに送信する必要があります。 GET / HEADリクエストでのみ使用し、308 Permanent Redirect 他のすべての方法について。 |
302が見つかりました | リソースは一時的に指定されたURLに移動されますLocation ヘッダ。 GET / HEADリクエストでのみ使用し、307 Temporary Redirect 他のすべての方法について。 |
303その他を見る | POSTまたはPUTリクエストの後、の確認メッセージをポイントします。Location ヘッダー。新しいGETリクエストを使用してアクセスできます。 |
304変更なし | クライアントがリクエストヘッダーを使用する場合If-Modified-Since またはIf-None-Match 、この応答ステータスコードは、リソースが変更されていないことを示します。 |
307一時的なリダイレクト | に似ています302 HTTPメソッドの変更を許可しない場合を除き、リクエスト |
308パーマネントリダイレクト | に似ています301 HTTPメソッドの変更を許可しない場合を除き、リクエスト |
クライアントエラー
ステータスコード | 説明 |
---|---|
400不正な要求 | クライアントで生成された要求エラーのため、サーバーは要求を処理できません。エラーには、不正な形式のリクエスト、サイズが大きすぎて処理できないなどが含まれます。 |
401無許可 | 認証が必要で、クライアントが許可されていない場合に送信されます |
403禁止します | さまざまな理由により、リソースを利用できません。理由が認証である場合は、401 Unauthorized ステータスコード。 |
404お探しのページが見つかりませんでした | 要求されたリソースが見つかりませんでした。 |
405メソッドは許可されていません | リソースはそのHTTPメソッドでは利用できませんが、別のメソッドで利用できる可能性があります。 |
406受け入れられない | クライアントは合格しましたAccept サーバーと互換性のない値を持つヘッダー。 |
407プロキシ認証が必要 | クライアントとサーバーの間には、認証を必要とするプロキシがあります。 |
408リクエストタイムアウト | サーバーはリクエストの待機中にタイムアウトしました。 |
409競合 | 複数の同時更新間の編集の競合など、リソースの現在の状態の競合のために要求を処理できなかったことを示します。 |
410ゴーン | リソースは利用できなくなり、再び利用できなくなります。 404よりも強力です。たとえば、検索エンジンは、そのリソースをインデックスから削除するための指標として解釈します。 |
411必要な長さ | クライアントはContent-Lengthヘッダーをリクエストに追加する必要があり、それは必須でした。 |
412前提条件が失敗しました | クライアントが送信した場合に返されますIf-Unmodified-Since またはIf-None-Match ヘッダーを要求し、サーバーはその条件を満たすことができません。 |
413ペイロードが大きすぎます | リクエストは、サーバーが処理しようとしている、または処理できるサイズよりも大きくなっています。 |
414URIが長すぎます | 提供されたURIが長すぎて、サーバーが処理できませんでした。 |
415サポートされていないメディアタイプ | 要求エンティティには、サーバーまたはリソースがサポートしていないメディアタイプがあります。 |
416範囲が満足できない | クライアントは、を使用してファイルの一部を要求しましたRange ヘッダーですが、サーバーはその部分を提供できません。 |
417期待に失敗しました | サーバーはの要件を満たすことができませんExpect リクエストヘッダー。 |
421誤ったリクエスト | 要求は、応答を生成できないサーバーに送信されました(たとえば、接続の再利用のため)。 |
426アップグレードが必要 | クライアントは、TLS /1.0などの別のプロトコルに切り替える必要があります。Upgrade ヘッダーフィールド。 |
428前提条件が必要 | サーバーには、リクエストにIf-Match ヘッダ。 |
429リクエストが多すぎます | ユーザーが指定された時間内に送信したリクエストが多すぎます。レート制限に使用されます。 |
431リクエストヘッダーフィールドが大きすぎます | 1つ以上のヘッダー、またはヘッダーセット全体が大きすぎるため、要求を実行できません。 |
451法的な理由で利用できません | 法的な理由により、リソースを利用できません |
サーバーエラー
ステータスコード | 説明 |
---|---|
500内部サーバーエラー | 予期しない状態が発生し、特定のメッセージが適切でなくなった場合に表示される、一般的なサーバーエラーメッセージ。 |
501は実装されていません | サーバーが要求メソッドを認識しないか、要求を満たす機能がありません。 |
502不正なゲートウェイ | サーバーはゲートウェイまたはプロキシとして機能しており、アップストリームサーバーから無効な応答を受信しました。 |
503サービスを利用できません | サーバーは現在一時的に利用できません(メンテナンスのためにサーバーが過負荷またはダウンしているため)。 |
504ゲートウェイのタイムアウト | サーバーはゲートウェイまたはプロキシとして機能しており、アップストリームサーバーからタイムリーな応答を受信しませんでした。 |
505HTTPバージョンはサポートされていません | サーバーは、リクエストで指定されたHTTPプロトコルバージョンをサポートしていません。 |
その他のネットワークチュートリアル:
- WebSocketの概要
- HTTPリクエストのしくみ
- HTTPリクエストヘッダーリスト
- HTTP応答ヘッダーリスト
- HTTPとHTTPS
- RFCとは何ですか?
- HTTPプロトコル
- HTTPSプロトコル
- HTTPリクエストのカールガイド
- HTTPでのキャッシュ
- HTTPステータスコードリスト
- CDNとは何ですか?
- HTTP / 2プロトコル
- ポートとは
- DNS、ドメインネームシステム
- TCPプロトコル
- UDPプロトコル
- RESTAPIの概要
- macOSにローカルSSL証明書をインストールする方法
- ローカルSSL証明書を生成する方法
- HTTPS用にNginxを構成する方法
- サブフォルダーから複数のNode.jsアプリを提供するためのシンプルなnginxリバースプロキシ
- リバースプロキシとは何ですか?