EASYBOT GUIDE
413 Payload Too Largeの原因とアップロード上限の直し方
HTTP 413エラーやZIPアップロード失敗の原因を調べ、Webサーバーとアプリの容量制限を安全に調整する方法を解説します。
413 Payload Too Largeは、送信したリクエスト本文がサーバーの上限を超えた時に返ります。ZIPや画像のアップロードでは、プロキシ、Webサーバー、アプリの複数箇所に上限が設定されていることがあります。
どの層の上限か確認
最も手前のプロキシが先に拒否する場合、アプリのログには要求が届きません。応答ヘッダー、各サービスのログ、設定ファイルから拒否した層を調べます。
- Cloudflareやロードバランサーの上限を確認する
- Nginxならclient_max_body_sizeなどを確認する
- アプリのJSON・multipart上限を確認する
ZIPを小さくする
ZIPにはnode_modules、仮想環境、キャッシュ、ビルド成果物が不要なことがあります。依存定義だけを含め、利用者データや秘密鍵を除いて圧縮します。
- node_modulesや.venvをZIPから外す
- 巨大なログや生成物を削除する
- ZIP内のファイル一覧と合計サイズを確認する
上限を変更する時の注意
アップロード上限を増やすとメモリやディスク使用量も増えます。要求全体をメモリへ読み込まない設定や、保存先容量、展開後サイズの制限も一緒に確認してください。
- 転送上限と展開後サイズの両方を制限する
- ファイル数とアップロード時間にも上限を設ける
- 一時ファイルを処理後に確実に削除する
利用者向けチェック
送信前にファイルサイズと形式を確認し、上限より十分小さなZIPを試します。再圧縮で改善しない場合は、上限値と画面に表示されたエラーを管理者へ伝えます。
- 画面に表示された対応サイズを確認する
- 同じZIPを何度も送らず、内容を軽くする
- アップロード中にページを閉じない