diff options
-rw-r--r-- | src/http/ngx_http_file_cache.c | 2 | ||||
-rw-r--r-- | src/http/ngx_http_upstream.c | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/http/ngx_http_file_cache.c b/src/http/ngx_http_file_cache.c index 8d06fb9bf..7f289ed33 100644 --- a/src/http/ngx_http_file_cache.c +++ b/src/http/ngx_http_file_cache.c @@ -181,8 +181,6 @@ ngx_http_file_cache_new(ngx_http_request_t *r) c->file.log = r->connection->log; c->file.fd = NGX_INVALID_FILE; - c->last_modified = -1; - return NGX_OK; } diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c index 7a5b3fdc2..23208c80e 100644 --- a/src/http/ngx_http_upstream.c +++ b/src/http/ngx_http_upstream.c @@ -2635,7 +2635,14 @@ ngx_http_upstream_send_response(ngx_http_request_t *r, ngx_http_upstream_t *u) if (u->headers_in.etag) { r->cache->etag = u->headers_in.etag->value; + + } else { + ngx_str_null(&r->cache->etag); } + + } else { + r->cache->last_modified = -1; + ngx_str_null(&r->cache->etag); } if (ngx_http_file_cache_set_header(r, u->buffer.start) != NGX_OK) { |