]> git.kaiwu.me - nginx.git/commitdiff
Upstream: fix $upstream_cache_last_modified variable.
authorPiotr Sikora <piotr@cloudflare.com>
Wed, 1 Oct 2014 22:48:53 +0000 (15:48 -0700)
committerPiotr Sikora <piotr@cloudflare.com>
Wed, 1 Oct 2014 22:48:53 +0000 (15:48 -0700)
Due to the u->headers_in.last_modified_time not being correctly initialized,
this variable was evaluated to "Thu, 01 Jan 1970 00:00:00 GMT" for responses
cached without the "Last-Modified" header which resulted in subsequent proxy
requests being sent with "If-Modified-Since: Thu, 01 Jan 1970 00:00:00 GMT"
header.

Signed-off-by: Piotr Sikora <piotr@cloudflare.com>
src/http/ngx_http_upstream.c

index d547ca74e3fbcb064068dde960fa08b4818f4b4a..d574a6a3103d19d4f76da43ccb261e8d96090bac 100644 (file)
@@ -441,6 +441,7 @@ ngx_http_upstream_create(ngx_http_request_t *r)
 #endif
 
     u->headers_in.content_length_n = -1;
+    u->headers_in.last_modified_time = -1;
 
     return NGX_OK;
 }
@@ -885,6 +886,7 @@ ngx_http_upstream_cache_send(ngx_http_request_t *r, ngx_http_upstream_t *u)
 
     ngx_memzero(&u->headers_in, sizeof(ngx_http_upstream_headers_in_t));
     u->headers_in.content_length_n = -1;
+    u->headers_in.last_modified_time = -1;
 
     if (ngx_list_init(&u->headers_in.headers, r->pool, 8,
                       sizeof(ngx_table_elt_t))
@@ -1582,6 +1584,7 @@ ngx_http_upstream_reinit(ngx_http_request_t *r, ngx_http_upstream_t *u)
 
     ngx_memzero(&u->headers_in, sizeof(ngx_http_upstream_headers_in_t));
     u->headers_in.content_length_n = -1;
+    u->headers_in.last_modified_time = -1;
 
     if (ngx_list_init(&u->headers_in.headers, r->pool, 8,
                       sizeof(ngx_table_elt_t))