Mercurial > hg > nginx
comparison src/http/modules/ngx_http_fastcgi_module.c @ 4386:92deb73393f7
Cache lock support for fastcgi, scgi, uwsgi.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 26 Dec 2011 11:16:19 +0000 |
parents | 31e6bfca10a5 |
children | d45742815c90 |
comparison
equal
deleted
inserted
replaced
4385:70ba81827472 | 4386:92deb73393f7 |
---|---|
377 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_1MORE, | 377 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_1MORE, |
378 ngx_conf_set_bitmask_slot, | 378 ngx_conf_set_bitmask_slot, |
379 NGX_HTTP_LOC_CONF_OFFSET, | 379 NGX_HTTP_LOC_CONF_OFFSET, |
380 offsetof(ngx_http_fastcgi_loc_conf_t, upstream.cache_methods), | 380 offsetof(ngx_http_fastcgi_loc_conf_t, upstream.cache_methods), |
381 &ngx_http_upstream_cache_method_mask }, | 381 &ngx_http_upstream_cache_method_mask }, |
382 | |
383 { ngx_string("fastcgi_cache_lock"), | |
384 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_FLAG, | |
385 ngx_conf_set_flag_slot, | |
386 NGX_HTTP_LOC_CONF_OFFSET, | |
387 offsetof(ngx_http_fastcgi_loc_conf_t, upstream.cache_lock), | |
388 NULL }, | |
389 | |
390 { ngx_string("fastcgi_cache_lock_timeout"), | |
391 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_TAKE1, | |
392 ngx_conf_set_msec_slot, | |
393 NGX_HTTP_LOC_CONF_OFFSET, | |
394 offsetof(ngx_http_fastcgi_loc_conf_t, upstream.cache_lock_timeout), | |
395 NULL }, | |
382 | 396 |
383 #endif | 397 #endif |
384 | 398 |
385 { ngx_string("fastcgi_temp_path"), | 399 { ngx_string("fastcgi_temp_path"), |
386 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_TAKE1234, | 400 NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_TAKE1234, |
2084 conf->upstream.cache = NGX_CONF_UNSET_PTR; | 2098 conf->upstream.cache = NGX_CONF_UNSET_PTR; |
2085 conf->upstream.cache_min_uses = NGX_CONF_UNSET_UINT; | 2099 conf->upstream.cache_min_uses = NGX_CONF_UNSET_UINT; |
2086 conf->upstream.cache_bypass = NGX_CONF_UNSET_PTR; | 2100 conf->upstream.cache_bypass = NGX_CONF_UNSET_PTR; |
2087 conf->upstream.no_cache = NGX_CONF_UNSET_PTR; | 2101 conf->upstream.no_cache = NGX_CONF_UNSET_PTR; |
2088 conf->upstream.cache_valid = NGX_CONF_UNSET_PTR; | 2102 conf->upstream.cache_valid = NGX_CONF_UNSET_PTR; |
2103 conf->upstream.cache_lock = NGX_CONF_UNSET; | |
2104 conf->upstream.cache_lock_timeout = NGX_CONF_UNSET_MSEC; | |
2089 #endif | 2105 #endif |
2090 | 2106 |
2091 conf->upstream.hide_headers = NGX_CONF_UNSET_PTR; | 2107 conf->upstream.hide_headers = NGX_CONF_UNSET_PTR; |
2092 conf->upstream.pass_headers = NGX_CONF_UNSET_PTR; | 2108 conf->upstream.pass_headers = NGX_CONF_UNSET_PTR; |
2093 | 2109 |
2320 prev->upstream.cache_valid, NULL); | 2336 prev->upstream.cache_valid, NULL); |
2321 | 2337 |
2322 if (conf->cache_key.value.data == NULL) { | 2338 if (conf->cache_key.value.data == NULL) { |
2323 conf->cache_key = prev->cache_key; | 2339 conf->cache_key = prev->cache_key; |
2324 } | 2340 } |
2341 | |
2342 ngx_conf_merge_value(conf->upstream.cache_lock, | |
2343 prev->upstream.cache_lock, 0); | |
2344 | |
2345 ngx_conf_merge_msec_value(conf->upstream.cache_lock_timeout, | |
2346 prev->upstream.cache_lock_timeout, 5000); | |
2325 | 2347 |
2326 #endif | 2348 #endif |
2327 | 2349 |
2328 ngx_conf_merge_value(conf->upstream.pass_request_headers, | 2350 ngx_conf_merge_value(conf->upstream.pass_request_headers, |
2329 prev->upstream.pass_request_headers, 1); | 2351 prev->upstream.pass_request_headers, 1); |