Mercurial > hg > nginx
changeset 7093:acc2cddc7b45
Upstream: unconditional parsing of last_modified_time.
This fixes at least the following cases, where no last_modified_time
(assuming caching is not enabled) resulted in incorrect behaviour:
- slice filter and If-Range requests (ticket #1357);
- If-Range requests with proxy_force_ranges;
- expires modified.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Wed, 23 Aug 2017 19:20:06 +0300 |
parents | 2e8de3d81783 |
children | c7d4017c8876 |
files | src/http/ngx_http_upstream.c |
diffstat | 1 files changed, 3 insertions(+), 17 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/ngx_http_upstream.c Tue Aug 22 17:36:12 2017 +0300 +++ b/src/http/ngx_http_upstream.c Wed Aug 23 19:20:06 2017 +0300 @@ -4390,15 +4390,8 @@ u = r->upstream; u->headers_in.last_modified = h; - -#if (NGX_HTTP_CACHE) - - if (u->cacheable) { - u->headers_in.last_modified_time = ngx_parse_http_time(h->value.data, - h->value.len); - } - -#endif + u->headers_in.last_modified_time = ngx_parse_http_time(h->value.data, + h->value.len); return NGX_OK; } @@ -4940,15 +4933,8 @@ *ho = *h; r->headers_out.last_modified = ho; - -#if (NGX_HTTP_CACHE) - - if (r->upstream->cacheable) { - r->headers_out.last_modified_time = + r->headers_out.last_modified_time = r->upstream->headers_in.last_modified_time; - } - -#endif return NGX_OK; }