413エラー 【HTTP 413 Content Too Large】 Payload Too Large / Request Entity Too Long
概要
413エラー(HTTP 413 Content Too Large)とは、Webサーバで起きるエラーの種類の一つで、リクエストの本文が長すぎてサーバが処理できないことを表すもの。WebサーバとWebブラウザなどのクライアントの間ではHTTP(Hypertext Transfer Protocol)という通信規約(プロトコル)でデータ伝送を行っている。クライアントからの要求(リクエスト)に対してサーバは応答(レスポンス)を返すが、その際に現在の状態を示すHTTPステータスコードを通知する。
ステータスコードの400番台はクライアントに起因するエラーを表しており、413番のエラーメッセージは “Payload Too Large” (ペイロードが大きすぎる)である。以前は “Request Entity Too Large” (要求の実体が大きすぎる)だったが変更された。クライアントから送られてきたリクエストのボディ部が長すぎてサーバが処理できる上限を上回っていることを示す。
HTTPリクエストボディはクライアントからサーバへ送るデータの本体で、GETメソッドでページ取得を要求する場合などには空だが、POSTメソッドでフォームの内容を送信したり、POSTメソッドやPUTメソッドでファイルをアップロードする場合などには送信データの本体が搭載される。クライアントが送ったデータが大きすぎてサーバが処理できない場合に413エラーが返される。
(2024.8.23更新)
HTTPステータスコード一覧
コード | 意味 | 初出 |
---|---|---|
100番台:Informational (情報) | ||
100 Continue | 継続 | HTTP/1.1 |
101 Switching Protocols | プロトコル切替 | HTTP/1.1 |
102 Processing | 処理中 | RFC 2518 |
103 Early Hints | 予想ヘッダの先行送信 | RFC 8297 |
200番台:Success (成功) | ||
200 OK | 成功 | HTTP/1.0 |
201 Created | 作成完了 | HTTP/1.0 |
202 Accepted | 受理 | HTTP/1.0 |
203 Non-Authoritative Information | 非公式な情報 | HTTP/1.1 |
204 No Content | 内容が空 | HTTP/1.0 |
205 Reset Content | 表示を初期化せよ | HTTP/1.1 |
206 Partial Content | 内容の一部を送る | HTTP/1.1 |
207 Multi-Status | 複数ステータスが混在 | RFC 4918 |
208 Already Reported | 以前に通知済み | RFC 5842 |
226 IM Used | 差分符号化されている | RFC 3229 |
300番台:Redirection (転送) | ||
300 Multiple Choices | 複数の候補がある | HTTP/1.1 |
301 Moved Permanently | 恒久的に移転 | HTTP/1.0 |
302 Found *1 | 別の場所で見つけた | HTTP/1.0 |
303 See Other | 別の場所を探せ | HTTP/1.1 |
304 Not Modified | 変更なし | HTTP/1.0 |
305 Use Proxy | 中継サーバを通せ | HTTP/1.1 |
307 Temporary Redirect | 一時的な転送 | HTTP/1.1 |
308 Parmanent Redirect | 恒久的な転送 | RFC 7538 |
400番台:Client Error (クライアントエラー) | ||
400 Bad Request | 不正なリクエスト | HTTP/1.0 |
401 Unauthorized | 未認証 | HTTP/1.0 |
402 Payment Required | 有料である | HTTP/1.1 |
403 Forbidden | アクセス権がない | HTTP/1.0 |
404 Not Found | 存在しない | HTTP/1.0 |
405 Method Not Allowed | そのメソッドは不可 | HTTP/1.1 |
406 Not Acceptable | 受理不可 | HTTP/1.1 |
407 Proxy Authentication Required | プロキシの認証が必要 | HTTP/1.1 |
408 Request Timeout | 時間切れ | HTTP/1.1 |
409 Conflict | 競合 | HTTP/1.1 |
410 Gone | 消滅した | HTTP/1.1 |
411 Length Required | 長さを指定せよ | HTTP/1.1 |
412 Precondition Failed | 前提条件不整合 | HTTP/1.1 |
413 Content Too Large *2 | 受信データが長すぎる | HTTP/1.1 |
414 URI Too Long *3 | URIが長すぎる | HTTP/1.1 |
415 Unsupported Media Type | データ形式非対応 | HTTP/1.1 |
416 Range Not Satisfiable *4 | 要求範囲が誤っている | HTTP/1.1 |
Expectヘッダの処理に失敗した | HTTP/1.1 | |
(かつてジョークRFCで使われた) | RFC 2324 | |
送信先が間違っている | HTTP/2 | |
受信データは処理できない | RFC 4918 | |
要求リソースはロックされている | RFC 4918 | |
依存関係の解決に失敗 | RFC 4918 | |
TLSのEarly-Data処理に失敗 | RFC 8470 | |
新しいバージョンのHTTPを使え | HTTP/1.1 | |
条件付きリクエストにせよ | RFC 6585 | |
短時間に要求を送りすぎである | RFC 6585 | |
長過ぎる要求ヘッダ項目がある | RFC 6585 | |
法的な理由で拒否 | RFC 7725 | |
500番台:Server Error (サーバエラー) | ||
500 Internal Server Error | サーバ内部のエラー | HTTP/1.0 |
501 Not Implemented | 機能が未実装 | HTTP/1.0 |
502 Bad Gateway | 中継サーバのエラー | HTTP/1.0 |
503 Service Unavailable | サービス停止中 | HTTP/1.0 |
504 Gateway Timeout | 中継サーバの要求が時間切れ | HTTP/1.1 |
505 HTTP Version Not Supported | HTTPバージョンが非対応 | HTTP/1.1 |
506 Variant Also Negotiates | 版指定で循環参照が発生 | RFC 2295 |
507 Insufficient Storage | ストレージ容量が不足 | RFC 4918 |
508 Loop Detected | 要求処理中に無限ループが発生 | RFC 5842 |
510 Not Extended | HTTP拡張機能には非対応(廃止済み) | RFC 2774 |
511 Network Authentication Required | キャプティブポータルで認証を受けよ | RFC 6585 |
*2 413はHTTP/1.1では「Request Entity Too Long」、RFC 7231では「Payload Too Long」だった。
*3 414はHTTP/1.1では「Request-URI Too Long」だった。
*4 416はHTTP/1.1では「Requested Range Not Satisfiable」だった。
*5 418は1998年エイプリルフールのジョークRFC 2324で「I'm a teapot」として定義されていた。