I am so confused - please validate this

Igor Sysoev is at rambler-co.ru
Tue Oct 27 00:07:47 MSK 2009


On Mon, Oct 26, 2009 at 01:54:32PM -0700, Michael Shadle wrote:

> i will try to setup a conditional access log - logging everything on
> the site will be an immense amount of waste, here's all my buffers or
> anything I thought might be relevant.
> 
> client_max_body_size 251m;   so i can accept 250 meg PHP uploads in POST
> client_header_buffer_size 8k;
> client_body_buffer_size 1024k;  an attempt to try to curb this buffering
> large_client_header_buffers 16 8k;

Only client_max_body_size and client_body_buffer_size are relevant here.
The first body part may be in client_header_buffer_size or in one of
the large_client_header_buffers.

> other buffers (relevant or not):
> 
> fastcgi_buffer_size 8k;
> fastcgi_buffers 16 8k;
> fastcgi_busy_buffers_size 16k;
> 
> proxy_buffer_size 16k;
> proxy_buffers 16 8k;
> 
> gzip_buffers 16 8k;
> 
> keepalive_timeout 30;
> 
> 2009/10/26 Igor Sysoev <is at rambler-co.ru>:
> > On Sun, Oct 25, 2009 at 03:46:04PM -0700, Michael Shadle wrote:
> >
> >> I get this in my error log - normally I ignore it, except the swf
> >> uploader being used seems to die and I am trying to narrow down why.
> >> It appears to use a PHP script to inform the flash applet of the final
> >> file size/etc. - very small, one line of text.
> >>
> >> However, it keeps being stuck in the body request buffer - even when I set
> >>
> >> client_body_buffer_size 1024k;
> >>
> >> Am I missing something here? I have something dump the contents of the
> >> response out and it's a single line of text. WAY under 1 megabyte.
> >> Would probably even fit into 64k...
> >>
> >> 2009/10/25 15:31:36 [warn] 9179#0: *7808465 a client request body is
> >> buffered to a temporary file /var/lib/nginx/body/0000003716, client:
> >> 18.18.31.200, server: foo.com, request: "POST /user/swfupload/put.php
> >> HTTP/1.1", host: "foo.com"
> >>
> >> That is the right variable, right? That's what it seems to be, however
> >> I am having issues still, even with the buffer size bumped up way
> >> beyond normal.
> >>
> >> Are there other variables I can tweak? Any other information anyone could use?
> >
> > The client_body_buffer_size is a directive, but not a variable.
> > A client body size is controlled by two directives: client_max_body_size
> > (a total max size) and client_body_buffer_size (up to this size nginx
> > will not store the body in temporary file). Could you log in access_log
> > "$http_content_length" to see the body length ?
> >
> >
> > --
> > Igor Sysoev
> > http://sysoev.ru/en/
> >
> >

-- 
Igor Sysoev
http://sysoev.ru/en/





More information about the nginx mailing list