comparison .hgtags @ 4274:595560d9dcbf

Fixed proxy_set_header inheritance with proxy_cache (ticket #45). Headers cleared with cache enabled (If-Modified-Since etc.) might be cleared in unrelated servers/locations without proxy_cache enabled if proxy_cache was used in some server/location. Example config which triggered the problem: proxy_set_header X-Test "test"; server { location /1 { proxy_cache name; proxy_pass ... } } server { location /2 { proxy_pass ... } } Another one: server { proxy_cache name; location /1 { proxy_pass ... } location /2 { proxy_cache off; proxy_pass ... } } In both cases If-Modified-Since header wasn't sent to backend in location /2. Fix is to not modify conf->headers_source, but instead merge user-supplied headers from conf->headers_source and default headers (either cache or not) into separate headers_merged array.
author Maxim Dounin <mdounin@mdounin.ru>
date Mon, 14 Nov 2011 13:18:15 +0000
parents eb3564afe78f
children 99a6f9596e5b
comparison
equal deleted inserted replaced
4273:e444e8f6538b 4274:595560d9dcbf