Mercurial > hg > nginx
changeset 2989:dff9764eaca2
do auto redirect for proxy_pass/fastcgi_pass with variables
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 20 Jul 2009 11:44:38 +0000 |
parents | b535ece5e350 |
children | d19467d8c659 |
files | src/http/modules/ngx_http_fastcgi_module.c src/http/modules/ngx_http_proxy_module.c |
diffstat | 2 files changed, 11 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/modules/ngx_http_fastcgi_module.c +++ b/src/http/modules/ngx_http_fastcgi_module.c @@ -2438,8 +2438,13 @@ ngx_http_fastcgi_pass(ngx_conf_t *cf, ng } clcf = ngx_http_conf_get_module_loc_conf(cf, ngx_http_core_module); + clcf->handler = ngx_http_fastcgi_handler; + if (clcf->name.data[clcf->name.len - 1] == '/') { + clcf->auto_redirect = 1; + } + value = cf->args->elts; url = &value[1]; @@ -2475,10 +2480,6 @@ ngx_http_fastcgi_pass(ngx_conf_t *cf, ng return NGX_CONF_ERROR; } - if (clcf->name.data[clcf->name.len - 1] == '/') { - clcf->auto_redirect = 1; - } - return NGX_CONF_OK; }
--- a/src/http/modules/ngx_http_proxy_module.c +++ b/src/http/modules/ngx_http_proxy_module.c @@ -2592,6 +2592,12 @@ ngx_http_proxy_pass(ngx_conf_t *cf, ngx_ clcf = ngx_http_conf_get_module_loc_conf(cf, ngx_http_core_module); + clcf->handler = ngx_http_proxy_handler; + + if (clcf->name.data[clcf->name.len - 1] == '/') { + clcf->auto_redirect = 1; + } + value = cf->args->elts; url = &value[1]; @@ -2620,8 +2626,6 @@ ngx_http_proxy_pass(ngx_conf_t *cf, ngx_ } #endif - clcf->handler = ngx_http_proxy_handler; - return NGX_CONF_OK; } @@ -2668,8 +2672,6 @@ ngx_http_proxy_pass(ngx_conf_t *cf, ngx_ ngx_http_proxy_set_vars(&u, &plcf->vars); - clcf->handler = ngx_http_proxy_handler; - plcf->location = clcf->name; if (clcf->named @@ -2693,10 +2695,6 @@ ngx_http_proxy_pass(ngx_conf_t *cf, ngx_ plcf->url = *url; - if (clcf->name.data[clcf->name.len - 1] == '/') { - clcf->auto_redirect = 1; - } - return NGX_CONF_OK; }