An official read-only mirror of http://hg.nginx.org/nginx/ which is updated hourly. Pull requests on GitHub cannot be accepted and will be automatically closed. The proper way to submit changes to nginx is via the nginx development mailing list, see http://nginx.org/en/docs/contributing_changes.html
Go to file
Maxim Dounin 8df3ad13c5 Upstream: fixed X-Accel-Expires/Cache-Control/Expires handling.
Previously, if caching was disabled due to Expires in the past, nginx
failed to cache the response even if it was cacheable as per subsequently
parsed Cache-Control header (ticket #964).

Similarly, if caching was disabled due to Expires in the past,
"Cache-Control: no-cache" or "Cache-Control: max-age=0", caching was not
used if it was cacheable as per subsequently parsed X-Accel-Expires header.

Fix is to avoid disabling caching immediately after parsing Expires in
the past or Cache-Control, but rather set flags which are later checked by
ngx_http_upstream_process_headers() (and cleared by "Cache-Control: max-age"
and X-Accel-Expires).

Additionally, now X-Accel-Expires does not prevent parsing of cache control
extensions, notably stale-while-revalidate and stale-if-error.  This
ensures that order of the X-Accel-Expires and Cache-Control headers is not
important.

Prodded by Vadim Fedorenko and Yugo Horie.
2022-06-07 00:07:12 +03:00
auto Configure: recognize arm64 machine name as a synonym for aarch64. 2022-04-29 17:38:01 +04:00
conf MIME: added image/avif type. 2021-10-25 20:49:15 +03:00
contrib Contrib: vim syntax adjusted to save cpoptions (ticket #2276). 2022-01-22 00:28:51 +03:00
docs Year 2022. 2022-02-04 13:29:31 +03:00
misc Updated OpenSSL and zlib used for win32 builds. 2022-05-24 02:51:49 +03:00
src Upstream: fixed X-Accel-Expires/Cache-Control/Expires handling. 2022-06-07 00:07:12 +03:00
.hgtags release-1.21.6 tag 2022-01-25 18:03:52 +03:00