Ignored Cache-Control request header

Maxim Dounin mdounin at mdounin.ru
Fri Mar 14 09:10:31 UTC 2014


On Thu, Mar 13, 2014 at 06:34:52PM -0400, bcx wrote:

> Thank you for your suggestion. I understand about the DoS issue.
> proxy_cache_bypass indeed is the solution. Documentation was not clear about
> it, but the result is written to cache. The cache is only bypassed in the
> lookup fase, not in the write back fase.

Documentation explicitly says that proxy_cache_bypass "defines 
conditions under which the response will not be taken from a 
cache".  There is proxy_no_cache to control saving responses to 
a cache.

> I worked out this bit of configuration. The added header is very useful
> while testing, I'd remove it in production.
> location / {
> 	if ($http_cache_control = "no-cache") {
> 		set $ctrl_Ffive_ed "yes";
> 	}
> 	proxy_cache_bypass $ctrl_Ffive_ed;
> 	add_header X-cache-bypass $ctrl_Ffive_ed;

Just a side note:

Use of map{} for such things is usually a better idea, though it 
probably doesn't matter for testing.

Maxim Dounin

More information about the nginx mailing list