Help us understand the problem. What is going on with this article?

nginxで"client intended to send too large body"が発生した時の対策方法

More than 5 years have passed since last update.

nginx が稼働しているWebページで、フォームからファイルをアップロードしようとしたら、
"1 client intended to send too large body: 1367171 bytes" というエラーが発生しました。

これは、nginx が POST の最大サイズを超えるデータが送られてきた場合に発生するエラーのようです。

http://wiki.nginx.org/HttpCoreModule#client_max_body_size
によると、nginx ではデフォルトで1MBまでのデータしか受け付けないようです。

nginx が1MBより大きなデータを受け取れるようにするには、nginx.conf で client_max_body_size ディレクティブを設定します。

client_max_body_sizehttp, server, locationコンテキスト内で使用できます。

nginx.conf
http {
    client_max_body_size 1048576; # default 1m

    server {
        client_max_body_size 100m;

        location ~ ^/upload/ {
            client_max_body_size 2g;
        }
    }
}
notakaos
東京在住のWeb Developer
yumemi
みんなが知ってるあのサービス、実はゆめみが作ってます。スマホアプリ/Webサービスの企画・UX/UI設計、開発運用。Swift, Kotlin, PHP, Vue.js, React.js, Node.js, AWS等エンジニア・クリエイターの会社です。Twitterで情報配信中https://twitter.com/yumemiinc
http://www.yumemi.co.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away