意味
リクエストボディがサーバーの処理できる、または処理したい大きさを超えています。以前は Payload Too Large と呼ばれていました。
よくある原因
- アップロードが nginx の client_max_body_size(デフォルト 1 MB)を超えた
- PHP の upload_max_filesize や post_max_size が小さすぎる
- API ゲートウェイやサーバーレスのボディ上限
対処法
クライアント・閲覧者の場合
アップロードを圧縮または分割するか、サービスの再開可能・マルチパートアップロード API を使います。
サイトや API の運営者の場合
プロキシ(client_max_body_size)、アプリのフレームワーク、ゲートウェイのすべての層で上限を上げます。エラーメッセージに上限を書きます。
レスポンス例
HTTP/1.1
HTTP/1.1 413 Content Too Large
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Connection: close
Content-Type: application/problem+json
{
"type": "about:blank",
"title": "Content Too Large",
"status": 413,
"detail": "Uploads are limited to 10 MB."
} 仕様
よくある質問
› nginx で 413 を直すには?
http、server、location ブロックで client_max_body_size を増やし(例:client_max_body_size 50m;)、nginx をリロードします。
› アプリの上限を上げても 413 になるのはなぜ?
リバースプロキシ、CDN、ロードバランサーなど別の層に、より低い独自の上限があります。