Mercurial > hg > nginx-quic
changeset 4176:2b5151a2300b
Fixed cache bypass caching of non-cacheable replies (ticket #21).
If cache was bypassed with proxy_cache_bypass, cache-controlling headers
(Cache-Control, Expires) wasn't considered and response was cached even
if it was actually non-cacheable.
Patch by John Ferlito.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Wed, 05 Oct 2011 10:14:21 +0000 |
parents | 9d59a8eda373 |
children | 33d9afa2c6db |
files | src/http/ngx_http_upstream.c |
diffstat | 1 files changed, 2 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/ngx_http_upstream.c +++ b/src/http/ngx_http_upstream.c @@ -683,6 +683,8 @@ ngx_http_upstream_cache(ngx_http_request return NGX_DECLINED; } + u->cacheable = 1; + switch (ngx_http_test_predicates(r, u->conf->cache_bypass)) { case NGX_ERROR: @@ -696,8 +698,6 @@ ngx_http_upstream_cache(ngx_http_request break; } - u->cacheable = 1; - c = r->cache; c->min_uses = u->conf->cache_min_uses; @@ -2181,8 +2181,6 @@ ngx_http_upstream_send_response(ngx_http ngx_http_upstream_finalize_request(r, u, 0); return; } - - u->cacheable = 1; } break;