comparison src/http/ngx_http_core_module.c @ 596:6c96fdd2dfc3 NGINX_0_8_50

nginx 0.8.50 *) Feature: the "secure_link", "secure_link_md5", and "secure_link_expires" directives of the ngx_http_secure_link_module. *) Feature: the -q switch. Thanks to Gena Makhomed. *) Bugfix: worker processes may got caught in an endless loop during reconfiguration, if a caching was used; the bug had appeared in 0.8.48. *) Bugfix: in the "gzip_disable" directive. Thanks to Derrick Petzold. *) Bugfix: nginx/Windows could not send stop, quit, reopen, and reload signals to a process run in other session.
author Igor Sysoev <http://sysoev.ru>
date Thu, 02 Sep 2010 00:00:00 +0400
parents 09d5f308901f
children be70f83b184f
comparison
equal deleted inserted replaced
595:57dcc025db4f 596:6c96fdd2dfc3
3109 #if (NGX_HTTP_GZIP) 3109 #if (NGX_HTTP_GZIP)
3110 clcf->gzip_vary = NGX_CONF_UNSET; 3110 clcf->gzip_vary = NGX_CONF_UNSET;
3111 clcf->gzip_http_version = NGX_CONF_UNSET_UINT; 3111 clcf->gzip_http_version = NGX_CONF_UNSET_UINT;
3112 #if (NGX_PCRE) 3112 #if (NGX_PCRE)
3113 clcf->gzip_disable = NGX_CONF_UNSET_PTR; 3113 clcf->gzip_disable = NGX_CONF_UNSET_PTR;
3114 #endif
3114 clcf->gzip_disable_msie6 = 3; 3115 clcf->gzip_disable_msie6 = 3;
3115 #endif
3116 #endif 3116 #endif
3117 3117
3118 return clcf; 3118 return clcf;
3119 } 3119 }
3120 3120
3786 } 3786 }
3787 3787
3788 n = ngx_http_script_variables_count(&clcf->root); 3788 n = ngx_http_script_variables_count(&clcf->root);
3789 3789
3790 ngx_memzero(&sc, sizeof(ngx_http_script_compile_t)); 3790 ngx_memzero(&sc, sizeof(ngx_http_script_compile_t));
3791 sc.variables = n;
3792
3793 #if (NGX_PCRE)
3794 if (alias && clcf->regex) {
3795 n = 1;
3796 }
3797 #endif
3791 3798
3792 if (n) { 3799 if (n) {
3793 sc.cf = cf; 3800 sc.cf = cf;
3794 sc.source = &clcf->root; 3801 sc.source = &clcf->root;
3795 sc.lengths = &clcf->root_lengths; 3802 sc.lengths = &clcf->root_lengths;
3796 sc.values = &clcf->root_values; 3803 sc.values = &clcf->root_values;
3797 sc.variables = n;
3798 sc.complete_lengths = 1; 3804 sc.complete_lengths = 1;
3799 sc.complete_values = 1; 3805 sc.complete_values = 1;
3800 3806
3801 if (ngx_http_script_compile(&sc) != NGX_OK) { 3807 if (ngx_http_script_compile(&sc) != NGX_OK) {
3802 return NGX_CONF_ERROR; 3808 return NGX_CONF_ERROR;
4382 rc.err.len = NGX_MAX_CONF_ERRSTR; 4388 rc.err.len = NGX_MAX_CONF_ERRSTR;
4383 rc.err.data = errstr; 4389 rc.err.data = errstr;
4384 4390
4385 for (i = 1; i < cf->args->nelts; i++) { 4391 for (i = 1; i < cf->args->nelts; i++) {
4386 4392
4387 if (ngx_strcmp(value[1].data, "msie6") == 0) { 4393 if (ngx_strcmp(value[i].data, "msie6") == 0) {
4388 clcf->gzip_disable_msie6 = 1; 4394 clcf->gzip_disable_msie6 = 1;
4389 continue; 4395 continue;
4390 } 4396 }
4391 4397
4392 re = ngx_array_push(clcf->gzip_disable); 4398 re = ngx_array_push(clcf->gzip_disable);
4393 if (re == NULL) { 4399 if (re == NULL) {
4394 return NGX_CONF_ERROR; 4400 return NGX_CONF_ERROR;
4395 } 4401 }
4396 4402
4397 rc.pattern = value[1]; 4403 rc.pattern = value[i];
4398 rc.options = NGX_REGEX_CASELESS; 4404 rc.options = NGX_REGEX_CASELESS;
4399 4405
4400 if (ngx_regex_compile(&rc) != NGX_OK) { 4406 if (ngx_regex_compile(&rc) != NGX_OK) {
4401 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, "%V", &rc.err); 4407 ngx_conf_log_error(NGX_LOG_EMERG, cf, 0, "%V", &rc.err);
4402 return NGX_CONF_ERROR; 4408 return NGX_CONF_ERROR;