さまざまな400エラーコードの定義

更新日:2022-05-16 /記事:Timothy Shim

400エラーコードは、サーバーがリクエストを理解しなかったことを示すHTTPステータスコードです。 これらのエラーは、無効なリクエストが原因である可能性があります。または、サーバーで問題が発生し、探しているものを配信できないことが原因で発生する可能性があります。 

問題は、ほとんどのエラーコードが数字といくつかの単語の簡単な説明で表されていることです。 これを理解するのに苦労している人を助けるために、わかりやすくするために説明を少し拡張します。

不正なリクエストエラーの原因は何ですか?

不正なリクエストエラーはさまざまな結果ですが、最も一般的な原因は、ユーザーがURLを誤って入力した場合です。 これは、個人がスラッシュまたはアンパサンドを誤って使用したり、URLの一部を完全に省略したりした場合に発生する可能性があります。 サーバーはリクエストの処理に苦労し、最終的に400エラーコードを返します。

もうXNUMXつの可能性は、ユーザーが外部ソースからURLを入力し、それを誤ってコピーしたか、何らかの理由で間違って取得したことです。 たとえば、電話を使用してWebサイトをプルアップし、Webサイトのアドレスを入力すると、ファットフィンガーシンドローム(私のように)が原因で一部の文字を誤って入力する可能性があります。

不正な要求エラーのあまり一般的ではない理由は、クライアント/サーバー通信に問題があることです。 これは、サーバーがクライアント(コンピューターのブラウザー)から要求されていることをまったく理解していないか、サーバーが何が起こっているかを理解していても、要求されていることを実行できないことが原因である可能性があります。

このタイプの400エラーメッセージが表示された場合は、ページを更新するか、適切に機能するものが見つかるまで他の検索を実行してみてください。現在問題を引き起こしているものではなく、そのURLを使用してください。

400のエラーコードとその意味のリスト

これらのエラーの意味と解決方法を知ることは、将来問題が発生した場合にWebサイトのサーバーの問題をトラブルシューティングするのに役立ちます。また、それらの定義を理解することは、Webサイトがコンテンツを適切に配信していない理由を見つけるのに役立ちます。いつでも。

400の間違ったリクエスト

400 Bad Requestエラーは非常に一般的であり、リソース要求(たとえば、Webページや画像へのアクセスの試行)がサーバーに対して何らかの形で不正であり、リソースを提供できない場合に発生します。 これは404NotFoundエラーとほぼ同じですが、何かが見つかった可能性があるが、クライアントによる使用に適さないと見なされた場合によく発生します。

このステータスコードの例には、次の場合が含まれます。

  • 要求に無効な構文が含まれているか、実行できません。
  • 不要なメッセージ本文に無効なContent-Lengthヘッダーフィールドが指定されているか、Content-Lengthヘッダーフィールド以外に誰も含まれていませんでした。
  • 不正なルーティングがありました(たとえば、クライアントが、要求されたURIによって識別されたホスト以外のホストを介してプロキシしようとしました)。 また
  • 前の要求が失敗したために失敗します(たとえば、安全でない一連の要求で「予期した」失敗が原因で一連の要求が失敗した場合は、503応答が適切な場合があります)。

401未承認

401エラーステータス応答は、試行しているものにアクセスするための適切な認証クレデンシャルがないことを意味します。 このHTTPステータスコードは、中間プロキシを使用したクライアント認証に問題がある場合にも頻繁に使用されます。

402支払いが必要

402エラーは、支払いを行っていないか、支払いを行ったが支払い方法を設定していないために、サーバーがリクエストを拒否したことを意味します。 通常、ローカルマシンでサイトをテストしていて、まだホスティングの料金を支払っていない場合に、このエラーが発生します。 それをあなたのウェブサイトがあなたに「最初に、私に払ってください」と言っていると考えてください。

禁断403

403エラー
403エラーはインターネット上でXNUMXセント硬貨です

403エラーは、もうXNUMXつの一般的な発生であり、ファイルの読み取り権限が不十分なWebサーバープロセスがある場合に発生します。 また、サイトのルートディレクトリにあるスクリプトまたはフォルダの所有権や権限が正しくないことや、Webスペースにあるリソースに対する適切なアクセス権がないことが原因である可能性もあります。

つまり、自分を表すIPアドレスを持つURLに接続しようとしたが、インターネットサービスプロバイダーによって(まだ)割り当てられていない場合、このエラーが発生します。 そのようなURLがまったくない場合。 または、そのようなURLがなく、他の誰かに属している場合(たとえば、サイトを削除した場合)。

404が見つかりません

404 Not Foundは、おそらく発生が予想される最も一般的なエラーコードです。 サーバーが要求されたリソースを見つけることができないことを示します。 理想的な世界では、クリックしたリンクやリクエストしたWebページは通常の応答時間で、探していたものを正確に返しますが、実際には、これが常に発生するとは限りません。

ユーザーがウェブページにアクセスしようとしたときに404NotFoundエラーを受け取った場合は、次のXNUMXつのいずれかが発生したことを意味します。

  • このページはWebサイトで利用できなくなりました(または利用できなくなりました)。
  • URLにエラーがあります。たとえば、アドレスのつづりが間違っています。

この文脈では、「壊れた」という別の言葉は死んでいます( デッドリンク).

405メソッドが許可されていない

HTTPエラーコード405MethodNot Allowedは、何らかの理由で、サーバーが特定の要求メソッドを拒否するように構成されていることを意味します。 これは、特定の条件下で許可されていない要求に対するHTTP標準応答です。 たとえば、データフォームをURLに投稿しようとしているが、クライアントがPOSTではなくGETメソッドを使用するように構成されている場合、このエラーがトリガーされます。

このエラーメッセージが表示される最も可能性の高い理由は、サーバーの権限が正しく構成されていないことが原因です。 あなたがあなたのウェブサイトでこのエラーを修正しようとしているなら、助けを得るのに最適な場所はあなたです ホスティングサービス プロバイダー。 問題のHTTPメソッドを許可するかどうかを尋ねる必要があります。

でパラメータを設定することにより、特定のHTTP動詞に依存しないようにWebサイトまたはWebアプリを構成することもできます。 .htaccessファイル.

406受け入れ不可

406 Not Acceptableエラーは、クライアントのエラーコードです。 サーバーは、要求のヘッダーで要求された形式に適合する応答を送信できない場合、このエラーで応答します。 つまり、JPGファイルを要求していて、サーバーが代わりにPDFを送信する必要がある場合、サーバーはこのエラーで応答します。

このエラーコードはあまり見られず、ブラウザによっては正しく表示されない場合があります。

406ステータスコードは、リクエストの形式に問題があったことを意味するだけです。 406メッセージ本文を応答に含めることはできません。そのため、メッセージ本文が表示された場合は、何か問題がある可能性があります。 

これは、システム上のブラウザのバグやマルウェアが原因で、すべてのページのソースを次のようにダウンロードすることが原因である場合があります。 HTML 他の形式が設定で指定されている場合でも。 このエラーは、URLリクエストが正しくないために発生した可能性があります(たとえば、「www.example .com」ではなく「www.examplecom」と入力した場合)。

407プロキシ認証が必要です

407プロキシ認証が必要な場合は、クライアントに適切な認証資格情報がないため、サーバーが要求を完了できないことを意味します。 代理サーバ これは、クライアントとサーバー間の要求を傍受しています。

Webサイトがプロキシサーバーを介してコンテンツを読み込もうとしたが、そのプロキシから認証を受け取らなかった場合、407エラーが頻繁に発生します。 このエラーは、インターネット設定の誤った構成に関連している可能性があります。 ファイアウォール。 また、学校や職場でセットアップされたコンピューターを使用していて、それらのエンティティが特定のWebサイトへのアクセスをブロックしている可能性もあります。

408リクエストのタイムアウト

コード408では、サーバーが待機する準備ができている時間内にクライアントが要求を生成しませんでした。 ご存知のように、インターネット通信に関して言えば、マシンには人間の忍耐力がなく、即座の応答を期待しています。 また、これらのマシンは重要な情報やサービスを提供することが多いため、容赦のない場合があります。

408エラーの原因として最も可能性が高いのは、クライアントが大きな要求(オペレーティングシステム全体のダウンロードなど)を生成したか、要求の生成が速すぎる可能性があることです。 後者は通常、自動化されたプロセス(ボットなど)で発生します。 

どちらの場合も、サーバーはリクエストの待機中にタイムアウトになりました。 ブラウザからそれ以上何も受信することを期待しなくなり、サイレント状態を継続すると接続が閉じられます。

409の競合

409 Conflictは、Webサーバーからの要求の試行中に何が起こっているかに問題があることを示すクライアントエラーコードです。 たとえば、誰かのアイテムからアイテムを削除するために eコマースWebサイトのショッピングカート、削除するには、まずカートに存在することを確認する必要があります。 

カートにないアイテムを削除するためにDELETEリクエストを送信しようとすると、409の競合が発生します。 簡単に言えば、そこにないものを削除することはできません。

410·ゴーン

410 Goneエラーコードは、存在しなくなったリソースの要求に対する応答です。 サーバーはこのリソースの要求に応答しないため、クライアントのキャッシュから削除する必要があります。

このエラーコードは、リソースが意図的に削除されており、戻ってこないことを示しています。 これは404NotFoundに似ていますが、以前は存在していたが意図的に削除されたリソースの404エラーの代わりに使用されることがあります。

411の長さが必要です

411 Length Requiredステータスコードは、サーバーがクライアントの要求に有効な長さの値を含むContent-Lengthヘッダーフィールドを予期していることを示します。 有効なContent-Lengthヘッダー値がリクエストに存在し、ゼロ以上である必要があります。

POSTリクエストにContent-Lengthヘッダーが含まれていない場合、ユーザーエージェントは「411LengthRequired」や「411missingrequiredfields」などのエラーメッセージを表示して拒否する可能性があります。

412前提条件が失敗しました

412 Precondition Failed応答コードは、サーバーがまだ満たしていない既存の条件があることを示しています。 サーバーは、Retry-Afterヘッダーを使用するか、417 Expectation Failedステータスコードを送信することにより、これらの前提条件のリスト(チェックに失敗したもののみ)で応答する必要があります。

このエラーは、ユーザーが正常に認証されたが、要求されたリソースにアクセスする権限がない場合など、他のタイプの条件に対する「OK」応答として使用される場合があります。 この場合、通常はリソースの代替表現を提供するか、そのような表現が利用できない場合は404NotFoundを返します。

413ペイロードが大きすぎます

413ペイロードが大きすぎる応答ステータスコードは、サーバーが処理する機能を備えていないタスクを実行するようにサーバーに要求しようとしていることを示します。 リクエストを満たすことが不可能であることがわかっているため、通常は接続をあきらめて閉じます。

通常は永続的ではないため、このエラーについてはあまり心配する必要はありません。 ペイロードは動的であり、サーバーにはRetry-Afterヘッダーフィールドが含まれるため、後でクライアントが繰り返し要求を実行できます。

414 URIが長すぎます

アクセスまたは使用しようとしているURLが長すぎて、サーバーがそれを処理できない場合、414 URITooLongエラーが発生します。 このエラーコードは、プロキシサーバーを使用している場合、特にアクセスしようとしているURLに多くのパラメータが追加されている場合に最も頻繁に返されます。

次の例は、ブラウザで414コードのエラーメッセージがどのように返されるかを示しています。

Request-URI Too Long要求されたURLの長さが、このサーバーの容量制限を超えています。

415サポートされていないメディアタイプ

415 Unsupported Media Type HTTPステータスコードは、その名前が示すとおりの意味です。サーバーは、ターゲットリソースでサポートされていない形式の本文を持っているため、クライアントの要求を受け入れることを拒否します。

このエラーは、リクエストの本文が正しくフォーマットされていないか、サポートされていないメディアタイプを使用している場合によく発生します。 たとえば、POSTリクエストにはJSONデータが含まれている場合がありますが、text/を指定するContent-Typeヘッダーが含まれています。HTML.

このエラーを修正する理想的な方法は、適切なメディアタイプのサポートを追加するか、受け入れられているタイプのXNUMXつに合うように体のフォーマットを変更することです。

416範囲が満足できません

リクエストに範囲リクエストヘッダーフィールドがある場合、 ウェブサーバー このエラーで応答する場合があります。 たとえば、範囲指定子の値が重複していて、If-Rangeリクエストヘッダーフィールドが含まれていない場合です。 

このステータスコードがバイト範囲の要求に対して返される場合、応答には、選択されたリソースの現在の長さを指定するContent-Rangeエンティティヘッダーフィールドを含める必要があります。 使用しないでください multipart/byterangesコンテンツタイプ.

417予想に失敗しました

サーバーがExpectrequest-headerフィールドの要件を満たせない場合、417ExpectationFailedエラーが発生します。 多くのアプリケーションは、デジタル署名または 暗号化 メッセージで使用され、そのようなメッセージを処理する方法についての期待を含める必要があります。

次に、クライアントは変更せずに要求を繰り返さないように指示されます。 それ以外の場合は、引き続き417ステータスコードを受け取ります。

418私はティーポットです

開発者がユーモアのセンスを持っていないと感じる人にとって、私はティーポットエラーである418は彼らが間違っていることを証明するように設計されているようです。 このエラーは、接続されたポットが実際にはティーポットであり、短くて頑丈であるため、HTTPクライアントがティーポットでコーヒーを淹れるときに返されます。 

エラーコードは従来の一部です IETFエイプリルフールのジョーク、RFC 2324、Hyper Text CoffeePotControlProtocol。 ちなみに、それは本物ではありません。 グーグルでそれを見つけたあなたの数人がいるので、私はそれを含めただけです。

421誤ったリクエスト

サーバーがリクエストの送信を拒否している場合、421エラーが発生します。 これは、次のようないくつかの理由で発生する可能性があります

  • クライアントが間違ったポートにリクエストを送信しました。
  • リクエストは別のサーバーに送信できます。
  • サーバーがリクエストを理解できない可能性があります。
  • サーバーがリクエストを解釈できない場合があります。

422処理できないエンティティ

422 Unprocessable Entityはクライアントエラーであり、通常、さまざまな理由でサーバーが要求を処理できなかったことを示します。 一般的な可能性のXNUMXつは、リクエストが誤って形成されたことです。 サーバーが悪意のある人物であり、エラーメッセージを送信してはならない可能性もあります。

特定のリクエストに応答して422UnprocessableEntityエラーが発生した場合、リクエストパラメータを変更するだけでは修正できません。 上記の理由により、リクエスト全体をアプリケーションサーバーで処理できないことを意味します。 

これは、サポートされていないURLでPUTまたはPOSTメソッドを使用してエンドポイントにアクセスしようとしたときに発生する可能性があります。

423ロック済み

423ロックされたエラーは400の不正な要求エラーのサブセットです。これは、クライアントが構文的に正しくない要求をサーバーに送信したことを意味します。 これらのエラーは、401 Unauthorized(または403 Forbidden)エラーコードと非常によく似ていますが、この場合、認証は役に立ちません。 どちらも承認の失敗を反映していますが、両者の間には本質的な違いがあります。

401 Unauthorizedエラーでは、サーバーはクライアントにアクセスを許可する機能がないことをクライアントに通知します。 応答ヘッダーには、WWW-Authenticate:Basic realm =” Restricted Area”のようなものが含まれ、ブラウザがこのヘッダーを見ると、まだ入力していない場合はユーザー名とパスワードの入力を求められます。 

これらを正しく入力すると、ブラウザはAuthorizationヘッダー(Authorization:Basic eFVzdEp0EYB0など)を使用して元のリクエストを再送信します。

対照的に、423 Lockedエラーでは、有効な資格情報を入力しても、現在許可されている以上の認証は許可されないため、このような再送信はできません。したがって、「Locked」という名前はとにかく禁止されるためです。 

応答ヘッダーには、「許可:GET POST HEADOPTIONSTRACE」のようなものが含まれます。 これらのメソッドは許可されますが、「PATCH」または「DELETE」は許可されません–これらはこのリソースにロックダウンされます。

424失敗した依存関係

このエラーコードは、 503サービスは利用できませんただし、リクエストが別のリクエストに依存していて、そのリクエストが失敗したため、サーバーがリクエストを実行できなかった場合を除きます。 クライアントは、変更せずに同じ要求を繰り返さないでください。 

たとえば、ユーザーはXNUMXつの方法を使用してアクションを実行しようとします。 XNUMXつの方法では認証が必要ですが、別の方法では必要ありません。 ユーザーが認証されていない場合、ユーザーはこのエラーコードを応答として受け取ります。

425早すぎる

425 Too Earlyエラーコードは、要求を処理する準備ができていないサーバーから返されます。 これは、サーバーがビジーであるか、サーバーが処理できない要求を受信したことが原因である可能性があります。 もうXNUMXつの可能性は、クライアントが古い情報を使用して最初の要求をまとめたため、これが変更された可能性があります。

426アップグレードが必要

426エラーが発生した場合は、サーバーが選択したプロトコルに基づいて要求を処理することを拒否していることを意味します。 別のプロトコルへの「アップグレード」が承認され、処理される場合があります。 426エラーには、必要なプロトコルに関する情報が含まれます。

たとえば、ページをリクエストすると、ブラウザは使用する必要があることを示す426応答を受信する場合があります。 HTTPの代わりにHTTPS.

428前提条件が必要です

428 Precondition Requiredステータスは、要求を満たすために条件が満たされる必要があることを意味します。 ほとんどのサーバーはこれを使用して 「更新が失われた」問題。 これは、クライアントがリソースの状態を取得し、それを変更して、サーバー上で置き換えるときに発生します。 

暫定的に、状態は他の誰かによって変更されます–したがって、競合が発生します。 これは、ノートブックで同じページを使用する権利をめぐって争っているXNUMX人の人間と考えてください。

Webサーバーは条件を使用して、Webサーバーで作業するすべての人が変更可能な状態の正しいコピーを持っていることを確認します。 前提条件チェックを開始するには、リクエストに「If-Match」または「If-Unmodified-Since」ヘッダーフィールドを含める必要があります。 例えば:

GET /test HTTP/1.1
If-Match: "747060ad8c113d8af7ad2048f209582f

429リクエストが多すぎます

HTTPエラー429TooMany Requestsは、クライアントが指定された時間内に送信した要求が多すぎるために、サーバーがHTTP要求を拒否したことが原因で発生します。 このエラーは通常、次のようなある種のレート制限システムによって引き起こされます。 Cloudflare 帯域制限 または アンチDDoS保護スクリプト.

レート制限は変動するため、リミッターを管理しているのがあなたでない限り、これを予測する実際の方法はありません。 ただし、これをプッシュし続ける限り、IPアドレスが最終的に禁止される可能性が高くなります。

431リクエストヘッダーフィールドが大きすぎます

431ステータスコードは、サーバーに送信するヘッダーフィールドが大きすぎることを意味します。 また、ヘッダーフィールドに障害があることを意味する場合もあります。 後者の場合、応答表現は通常、大きすぎる特定のヘッダーフィールドを示します。

オリジンサーバーは、ステータスコード431の応答を使用して、リクエストが安全でないか不適切である可能性があることを示すことができます。 応答には、そのようなアクションを完了できない理由を説明するメタデータが含まれている必要があります。

451法的な理由で利用不可

法的な問題によりコンテンツが利用できない場合、HTTP451エラーが報告されます。 このエラーコードを受け取った場合は、サーバー管理者に連絡する必要があります。サーバー管理者は、問題の原因と解決方法に関する詳細情報を提供できます。

このエラーは検閲と法的な問題に関連しているため、エラー451が発生したリクエストは、ほとんどの場合、法的な理由でリソースが利用できないことを示す一般的なメッセージを返します。

400エラーコードの修正

400個のエラーコードを修正する方法は、Webサイトのユーザーであるか所有者であるかによって異なります。 ユーザーの場合、ページを更新するか、後で再試行する以外に何もする必要はありません。 それでも問題が解決しない場合は、ウェブサイトの所有者/管理者に連絡して修正する必要があります。

あなたがウェブサイトの所有者であり、端末でこのエラーコードを受け取った場合、理解すべきことがいくつかあります。 まず、400のエラーコードの多くは、サーバーファイルに不適切に記述されたコードが原因で発生する可能性があります。 これらのさまざまなエラーの意味を理解し、それらを修正するための正しい行動方針を見つける必要があります。 

結論

400のエラーは多くのフラストレーションを引き起こす可能性がありますが、Webサーバーが何を望んでいるかを理解していれば、幸いにも非常に簡単に解決できます。 幸い、各エラーは個別であり、ブラウザに独自のステータスメッセージが表示されます。 これにより、リクエストが失敗した理由と、それを修正する方法を理解できるはずです。

それでもリクエストが解決しないという問題が発生する場合は、ホスティングサポートに連絡するか、別のブラウザを試してみてください。一部のブラウザでは、特定のリクエストの処理が異なる場合があります。

続きを読む

ティモシーシムについて

ティモシー・シム(Timothy Shim)は、作家、編集者、テクニカルオタクです。 情報技術分野でキャリアをスタートした彼は、急速に印刷物を見つけ、ComputerWorld、PC.com、Business Today、The Asian Bankerなどの国際、地域、国内メディアのタイトルを扱ってきました。 彼の専門知識は、消費者だけでなく企業の観点からも技術分野にあります。

接続します。