Mercurial > hg > nginx
comparison src/http/modules/ngx_http_fastcgi_module.c @ 2786:4e002555652d
proxy_ignore_headers and fastcgi_ignore_headers
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 30 Apr 2009 16:15:07 +0000 |
parents | e85497f36011 |
children | 6e1941b321b7 |
comparison
equal
deleted
inserted
replaced
2785:d478379e51ac | 2786:4e002555652d |
---|---|
181 { ngx_string("off"), NGX_HTTP_UPSTREAM_FT_OFF }, | 181 { ngx_string("off"), NGX_HTTP_UPSTREAM_FT_OFF }, |
182 { ngx_null_string, 0 } | 182 { ngx_null_string, 0 } |
183 }; | 183 }; |
184 | 184 |
185 | 185 |
186 static ngx_conf_bitmask_t ngx_http_fastcgi_ignore_headers_masks[] = { | |
187 { ngx_string("X-Accel-Redirect"), NGX_HTTP_UPSTREAM_IGN_XA_REDIRECT }, | |
188 { ngx_string("X-Accel-Expires"), NGX_HTTP_UPSTREAM_IGN_XA_EXPIRES }, | |
189 { ngx_string("Expires"), NGX_HTTP_UPSTREAM_IGN_EXPIRES }, | |
190 { ngx_string("Cache-Control"), NGX_HTTP_UPSTREAM_IGN_CACHE_CONTROL }, | |
191 { ngx_null_string, 0 } | |
192 }; | |
193 | |
194 | |
186 ngx_module_t ngx_http_fastcgi_module; | 195 ngx_module_t ngx_http_fastcgi_module; |
187 | 196 |
188 | 197 |
189 static ngx_command_t ngx_http_fastcgi_commands[] = { | 198 static ngx_command_t ngx_http_fastcgi_commands[] = { |
190 | 199 |
406 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_FLAG, | 415 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_FLAG, |
407 ngx_conf_set_str_array_slot, | 416 ngx_conf_set_str_array_slot, |
408 NGX_HTTP_LOC_CONF_OFFSET, | 417 NGX_HTTP_LOC_CONF_OFFSET, |
409 offsetof(ngx_http_fastcgi_loc_conf_t, upstream.hide_headers), | 418 offsetof(ngx_http_fastcgi_loc_conf_t, upstream.hide_headers), |
410 NULL }, | 419 NULL }, |
420 | |
421 { ngx_string("fastcgi_ignore_headers"), | |
422 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_1MORE, | |
423 ngx_conf_set_bitmask_slot, | |
424 NGX_HTTP_LOC_CONF_OFFSET, | |
425 offsetof(ngx_http_fastcgi_loc_conf_t, upstream.ignore_headers), | |
426 &ngx_http_fastcgi_ignore_headers_masks }, | |
411 | 427 |
412 { ngx_string("fastcgi_catch_stderr"), | 428 { ngx_string("fastcgi_catch_stderr"), |
413 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_FLAG, | 429 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_FLAG, |
414 ngx_conf_set_str_array_slot, | 430 ngx_conf_set_str_array_slot, |
415 NGX_HTTP_LOC_CONF_OFFSET, | 431 NGX_HTTP_LOC_CONF_OFFSET, |
1815 | 1831 |
1816 /* | 1832 /* |
1817 * set by ngx_pcalloc(): | 1833 * set by ngx_pcalloc(): |
1818 * | 1834 * |
1819 * conf->upstream.bufs.num = 0; | 1835 * conf->upstream.bufs.num = 0; |
1836 * conf->upstream.ignore_headers = 0; | |
1820 * conf->upstream.next_upstream = 0; | 1837 * conf->upstream.next_upstream = 0; |
1821 * conf->upstream.use_stale_cache = 0; | 1838 * conf->upstream.use_stale_cache = 0; |
1822 * conf->upstream.temp_path = NULL; | 1839 * conf->upstream.temp_path = NULL; |
1823 * conf->upstream.hide_headers_hash = { NULL, 0 }; | 1840 * conf->upstream.hide_headers_hash = { NULL, 0 }; |
1824 * conf->upstream.uri = { 0, NULL }; | 1841 * conf->upstream.uri = { 0, NULL }; |
2010 | 2027 |
2011 return NGX_CONF_ERROR; | 2028 return NGX_CONF_ERROR; |
2012 } | 2029 } |
2013 | 2030 |
2014 | 2031 |
2032 ngx_conf_merge_bitmask_value(conf->upstream.ignore_headers, | |
2033 prev->upstream.ignore_headers, | |
2034 NGX_CONF_BITMASK_SET); | |
2035 | |
2036 | |
2015 ngx_conf_merge_bitmask_value(conf->upstream.next_upstream, | 2037 ngx_conf_merge_bitmask_value(conf->upstream.next_upstream, |
2016 prev->upstream.next_upstream, | 2038 prev->upstream.next_upstream, |
2017 (NGX_CONF_BITMASK_SET | 2039 (NGX_CONF_BITMASK_SET |
2018 |NGX_HTTP_UPSTREAM_FT_ERROR | 2040 |NGX_HTTP_UPSTREAM_FT_ERROR |
2019 |NGX_HTTP_UPSTREAM_FT_TIMEOUT)); | 2041 |NGX_HTTP_UPSTREAM_FT_TIMEOUT)); |