ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: X-Accel-Redirect и проксировани е: на передается неверны й url



On Mon, Jul 12, 2010 at 07:20:37PM +0400, Alexey A. Rybak wrote:

> >> вроде бы обошел эту ситуацию через rewrite в проксирующем локейшене, типа
> >> rewrite ^/url-redirect /url-redirect last;
> >> несмотря на свою тривиальность эта директива всё-таки меняет какую-то
> >> внутреннюю переменную и после этого запрос на прокси уже приходит с
> >> нужным урлом.
> >> но это какой-то грязный хак. короче, вопрос простой - я чего-то не
> >> догоняю или это баг? nginx/0.7.64
> >
> > Это баг в 0.7.64. Исправилен в
> >
> > Changes with nginx 0.8.41                                        15 Jun 2010
> >
> >    *) Change: now nginx allows to use spaces in a request line.
> >
> > как side-effect.
> 
> боязно на 0.8 переползать... ну ок пасиб большое, будем знать

0.8 скоро будет stable.
Патч.


-- 
Игорь Сысоев
http://sysoev.ru
Index: src/http/ngx_http_request.c
===================================================================
--- src/http/ngx_http_request.c (revision 2941)
+++ src/http/ngx_http_request.c (working copy)
@@ -752,6 +752,7 @@
             r->unparsed_uri.len = r->uri_end - r->uri_start;
             r->unparsed_uri.data = r->uri_start;
 
+            r->valid_unparsed_uri = 1;
 
             r->method_name.len = r->method_end - r->request_start + 1;
             r->method_name.data = r->request_line.data;
Index: src/http/ngx_http_core_module.c
===================================================================
--- src/http/ngx_http_core_module.c     (revision 2941)
+++ src/http/ngx_http_core_module.c     (working copy)
@@ -785,10 +785,6 @@
         r->phase_handler = cmcf->phase_engine.server_rewrite_index;
     }
 
-    if (r->unparsed_uri.len) {
-        r->valid_unparsed_uri = 1;
-    }
-
     r->valid_location = 1;
 #if (NGX_HTTP_GZIP)
     r->gzip_tested = 0;
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.