I get the following error in my log files every time I try to upload a large file.
a client request body is buffered to a temporary file /var/lib/nginx/body/0000000001
Although the file uploads successfully, I always get the above error.
I increased the
1000m which is what I expect the largest file uploaded to be. However, this is was just a guess and although I don’t get that error anymore I am wondering if this is an appropriate value to set for the
I would appreciate it if anyone can shed some light on this directive and how it should be used.
This is a warning, not an error. That’s why it was prefaced with
[warn] in the log.
It means that the size of the uploaded file was larger than the in-memory buffer reserved for uploads.
client_body_buffer_size controls the size of that buffer.
If you can afford to have 1GB of RAM always reserved for the occasional file upload, then that’s fine. It’s a performance optimization to buffer the upload in RAM rather than in a temporary file on disk, though with such large uploads a couple of extra seconds probably doesn’t matter much. If most of your uploads are small, then it’s probably a waste.
In the end, only you can really make the decision as to what the appropriate size is.
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.