request body and client_body_buffer_size

Jeroen Ooms jeroenooms at
Sat Sep 14 00:56:51 UTC 2013

Is it correct that when $content_length > client_body_buffer_size,
then $request_body == "" ? If so this would be worth documenting at

I am using:

    proxy_cache_methods POST;
    proxy_cache_key "$request_method$request_uri$request_body";

Which works for small requests, but for large requests clients got
very strange results due to $request_body being empty and hence
getting false cache hits for completely different form posts.

Is there something available like $body_hash that can be used as a
caching key even for large request bodies? Or alternatively, how
would I configure nginx to not cache requests when content_length
is larger than client_body_buffer_size?

More information about the nginx mailing list