Mercurial > hg > nginx
comparison src/http/modules/ngx_http_fastcgi_module.c @ 3597:0d8b8c84bab7 stable-0.7
merge r3518, r3527:
cache related fixes:
*) do not cache response if it has "no-store" or "private"
in "Cache-Control" header
*) proxy_no_cache and fastcgi_no_cache
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 07 Jun 2010 12:23:23 +0000 |
parents | 3354dfba9da4 |
children |
comparison
equal
deleted
inserted
replaced
3596:555de5bdb800 | 3597:0d8b8c84bab7 |
---|---|
330 NGX_HTTP_MAIN_CONF|NGX_CONF_2MORE, | 330 NGX_HTTP_MAIN_CONF|NGX_CONF_2MORE, |
331 ngx_http_file_cache_set_slot, | 331 ngx_http_file_cache_set_slot, |
332 0, | 332 0, |
333 0, | 333 0, |
334 &ngx_http_fastcgi_module }, | 334 &ngx_http_fastcgi_module }, |
335 | |
336 { ngx_string("fastcgi_no_cache"), | |
337 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_1MORE, | |
338 ngx_http_no_cache_set_slot, | |
339 NGX_HTTP_LOC_CONF_OFFSET, | |
340 offsetof(ngx_http_fastcgi_loc_conf_t, upstream.no_cache), | |
341 NULL }, | |
335 | 342 |
336 { ngx_string("fastcgi_cache_valid"), | 343 { ngx_string("fastcgi_cache_valid"), |
337 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_1MORE, | 344 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_1MORE, |
338 ngx_http_file_cache_valid_set_slot, | 345 ngx_http_file_cache_valid_set_slot, |
339 NGX_HTTP_LOC_CONF_OFFSET, | 346 NGX_HTTP_LOC_CONF_OFFSET, |
1888 conf->upstream.pass_request_body = NGX_CONF_UNSET; | 1895 conf->upstream.pass_request_body = NGX_CONF_UNSET; |
1889 | 1896 |
1890 #if (NGX_HTTP_CACHE) | 1897 #if (NGX_HTTP_CACHE) |
1891 conf->upstream.cache = NGX_CONF_UNSET_PTR; | 1898 conf->upstream.cache = NGX_CONF_UNSET_PTR; |
1892 conf->upstream.cache_min_uses = NGX_CONF_UNSET_UINT; | 1899 conf->upstream.cache_min_uses = NGX_CONF_UNSET_UINT; |
1900 conf->upstream.no_cache = NGX_CONF_UNSET_PTR; | |
1893 conf->upstream.cache_valid = NGX_CONF_UNSET_PTR; | 1901 conf->upstream.cache_valid = NGX_CONF_UNSET_PTR; |
1894 #endif | 1902 #endif |
1895 | 1903 |
1896 conf->upstream.hide_headers = NGX_CONF_UNSET_PTR; | 1904 conf->upstream.hide_headers = NGX_CONF_UNSET_PTR; |
1897 conf->upstream.pass_headers = NGX_CONF_UNSET_PTR; | 1905 conf->upstream.pass_headers = NGX_CONF_UNSET_PTR; |
2109 conf->upstream.cache_methods = prev->upstream.cache_methods; | 2117 conf->upstream.cache_methods = prev->upstream.cache_methods; |
2110 } | 2118 } |
2111 | 2119 |
2112 conf->upstream.cache_methods |= NGX_HTTP_GET|NGX_HTTP_HEAD; | 2120 conf->upstream.cache_methods |= NGX_HTTP_GET|NGX_HTTP_HEAD; |
2113 | 2121 |
2122 ngx_conf_merge_ptr_value(conf->upstream.no_cache, | |
2123 prev->upstream.no_cache, NULL); | |
2124 | |
2114 ngx_conf_merge_ptr_value(conf->upstream.cache_valid, | 2125 ngx_conf_merge_ptr_value(conf->upstream.cache_valid, |
2115 prev->upstream.cache_valid, NULL); | 2126 prev->upstream.cache_valid, NULL); |
2116 | 2127 |
2117 if (conf->cache_key.value.data == NULL) { | 2128 if (conf->cache_key.value.data == NULL) { |
2118 conf->cache_key = prev->cache_key; | 2129 conf->cache_key = prev->cache_key; |