Mercurial > hg > nginx
view conf/win-utf @ 5992:174512857ccf
Cache: do not inherit last_modified and etag from stale response.
When replacing a stale cache entry, its last_modified and etag could be
inherited from the old entry if the response code is not 200 or 206. Moreover,
etag could be inherited with any response code if it's missing in the new
response. As a result, the cache entry is left with invalid last_modified or
etag which could lead to broken revalidation.
For example, when a file is deleted from backend, its last_modified is copied to
the new 404 cache entry and is used later for revalidation. Once the old file
appears again with its original timestamp, revalidation succeeds and the cached
404 response is sent to client instead of the file.
The problem appeared with etags in 44b9ab7752e3 (1.7.3) and affected
last_modified in 1573fc7875fa (1.7.9).
author | Roman Arutyunyan <arut@nginx.com> |
---|---|
date | Mon, 02 Mar 2015 19:47:13 +0300 |
parents | 63a820b0bc6c |
children |
line wrap: on
line source
# This map is not a full windows-1251 <> utf8 map: it does not # contain Serbian and Macedonian letters. If you need a full map, # use contrib/unicode2nginx/win-utf map instead. charset_map windows-1251 utf-8 { 82 E2809A ; # single low-9 quotation mark 84 E2809E ; # double low-9 quotation mark 85 E280A6 ; # ellipsis 86 E280A0 ; # dagger 87 E280A1 ; # double dagger 88 E282AC ; # euro 89 E280B0 ; # per mille 91 E28098 ; # left single quotation mark 92 E28099 ; # right single quotation mark 93 E2809C ; # left double quotation mark 94 E2809D ; # right double quotation mark 95 E280A2 ; # bullet 96 E28093 ; # en dash 97 E28094 ; # em dash 99 E284A2 ; # trade mark sign A0 C2A0 ; # A1 D18E ; # capital Byelorussian short U A2 D19E ; # small Byelorussian short u A4 C2A4 ; # currency sign A5 D290 ; # capital Ukrainian soft G A6 C2A6 ; # borken bar A7 C2A7 ; # section sign A8 D081 ; # capital YO A9 C2A9 ; # (C) AA D084 ; # capital Ukrainian YE AB C2AB ; # left-pointing double angle quotation mark AC C2AC ; # not sign AD C2AD ; # soft hypen AE C2AE ; # (R) AF D087 ; # capital Ukrainian YI B0 C2B0 ; # ° B1 C2B1 ; # plus-minus sign B2 D086 ; # capital Ukrainian I B3 D196 ; # small Ukrainian i B4 D291 ; # small Ukrainian soft g B5 C2B5 ; # micro sign B6 C2B6 ; # pilcrow sign B7 C2B7 ; # · B8 D191 ; # small yo B9 E28496 ; # numero sign BA D194 ; # small Ukrainian ye BB C2BB ; # right-pointing double angle quotation mark BF D197 ; # small Ukrainian yi C0 D090 ; # capital A C1 D091 ; # capital B C2 D092 ; # capital V C3 D093 ; # capital G C4 D094 ; # capital D C5 D095 ; # capital YE C6 D096 ; # capital ZH C7 D097 ; # capital Z C8 D098 ; # capital I C9 D099 ; # capital J CA D09A ; # capital K CB D09B ; # capital L CC D09C ; # capital M CD D09D ; # capital N CE D09E ; # capital O CF D09F ; # capital P D0 D0A0 ; # capital R D1 D0A1 ; # capital S D2 D0A2 ; # capital T D3 D0A3 ; # capital U D4 D0A4 ; # capital F D5 D0A5 ; # capital KH D6 D0A6 ; # capital TS D7 D0A7 ; # capital CH D8 D0A8 ; # capital SH D9 D0A9 ; # capital SHCH DA D0AA ; # capital hard sign DB D0AB ; # capital Y DC D0AC ; # capital soft sign DD D0AD ; # capital E DE D0AE ; # capital YU DF D0AF ; # capital YA E0 D0B0 ; # small a E1 D0B1 ; # small b E2 D0B2 ; # small v E3 D0B3 ; # small g E4 D0B4 ; # small d E5 D0B5 ; # small ye E6 D0B6 ; # small zh E7 D0B7 ; # small z E8 D0B8 ; # small i E9 D0B9 ; # small j EA D0BA ; # small k EB D0BB ; # small l EC D0BC ; # small m ED D0BD ; # small n EE D0BE ; # small o EF D0BF ; # small p F0 D180 ; # small r F1 D181 ; # small s F2 D182 ; # small t F3 D183 ; # small u F4 D184 ; # small f F5 D185 ; # small kh F6 D186 ; # small ts F7 D187 ; # small ch F8 D188 ; # small sh F9 D189 ; # small shch FA D18A ; # small hard sign FB D18B ; # small y FC D18C ; # small soft sign FD D18D ; # small e FE D18E ; # small yu FF D18F ; # small ya }