Proxy error handling

Igor Sysoev is at rambler-co.ru
Thu Feb 28 18:49:28 MSK 2008


On Thu, Feb 28, 2008 at 06:43:05PM +0300, Igor Sysoev wrote:

> On Thu, Feb 28, 2008 at 05:48:10PM +0300, Igor Shergin wrote:
> 
> > -            rewrite ^/test3(.*)$     /3.jpg;
> > -            rewrite ^/test2(.*)$     /2.jpg;
> > -            rewrite ^/test1(.*)$     /1.jpg;
> > -            return 200;
> > 
> > +            rewrite ^/test3(.*)$     /3.jpg  break;
> > +            rewrite ^/test2(.*)$     /2.jpg  break;
> > +            rewrite ^                /1.jpg  break;
> > 
> > Теперь выходит так:
> > 
> > igors at core0% telnet proxytest 80
> > Trying...
> > Connected to proxytest.
> > Escape character is '^]'.
> > GET /q HTTP/1.1
> > Host: proxytest
> > User-Agent: Test
> > 
> > Connection closed by foreign host.
> > 
> > Воспроизводится и на хосте с 0.5.33.
> 
> Прилагаемый патч должен решить проблему.

Предыдущий патч неправильный, его нужно откатить, а новый накатить.


-- 
Игорь Сысоев
http://sysoev.ru
-------------- next part --------------
Index: src/http/ngx_http_core_module.c
===================================================================
--- src/http/ngx_http_core_module.c	(revision 1223)
+++ src/http/ngx_http_core_module.c	(working copy)
@@ -1915,6 +1915,8 @@
         ngx_log_debug3(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
                        "named location: %V \"%V?%V\"", name, &r->uri, &r->args);
 
+        r->content_handler = NULL;
+
         r->internal = 1;
 
         r->loc_conf = clcfp[i]->loc_conf;
@@ -1924,6 +1926,7 @@
         cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module);
 
         r->phase_handler = cmcf->phase_engine.location_rewrite_index;
+
         ngx_http_core_run_phases(r);
 
         return NGX_DONE;


More information about the nginx-ru mailing list