X-Accel-Redirect если есть возможность править код бекенда<br><a href="http://kovyrin.net/2006/11/01/nginx-x-accel-redirect-php-rails/">http://kovyrin.net/2006/11/01/nginx-x-accel-redirect-php-rails/</a><br><br><div class="gmail_quote">

2010/1/13 Костенко Евгений <span dir="ltr">&lt;<a href="mailto:nobody.mail@gmail.com">nobody.mail@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

Добрый день.<div><br></div><div>FreeBSD somehost.tld 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Fri Jan 12 11:05:30 UTC 2007     root@dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/SMP  i386</div><div><div><br></div><div>nginx version: nginx/0.7.64</div>



<div>TLS SNI support enabled</div><div>configure arguments: --prefix=/usr/local/etc/nginx --with-cc-opt=&#39;-I /usr/local/include&#39; --with-ld-opt=&#39;-L /usr/local/lib&#39; --conf-path=/usr/local/etc/nginx/nginx.conf --sbin-path=/usr/local/sbin/nginx --pid-path=/var/run/nginx.pid --error-log-path=/var/log/nginx-error.log --user=www --group=www --with-google_perftools_module --http-client-body-temp-path=/var/tmp/nginx/client_body_temp --http-proxy-temp-path=/var/tmp/nginx/proxy_temp --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi_temp --http-log-path=/var/log/nginx-access.log --with-http_gzip_static_module --with-http_image_filter_module --with-http_perl_module --with-http_realip_module --with-http_secure_link_module --with-http_ssl_module --with-http_stub_status_module --with-http_xslt_module --with-pcre</div>



<div><br></div></div><div>Возможно хочется странного, но есть потребность реализовать следующее:</div><div><br></div><div>Запрос клиента уходит на back1, где при 404 по error_page уходит в именованный location.</div><div>



Необходимо сделать rewrite uri на основе хидера, выданного back1.</div><div>Мои попытки свелись к 500й ошибке с сообщением &quot;the rewritten URI has a zero length while sending to client&quot;.</div><div><br></div><div>



Вопрос - как подставить хидер, выданный back1 в конструкцию rewrite? Если это вообще реально соорудить 8)</div><div><br></div><div><div>      location / {</div><div>            proxy_pass         <a href="http://back1" target="_blank">http://back1</a>;</div>



<div><br></div><div>            proxy_intercept_errors on;</div><div>            recursive_error_pages on;</div><div><br></div><div>            error_page 404 = @fetch;</div><div>            &lt;skipped&gt;</div><div>        }</div>



<div><br></div><div><div>      location @fetch {</div><div><br></div><div>            proxy_pass         <a href="http://back2" target="_blank">http://back2</a>;</div><div>            proxy_redirect     off;</div><div>            proxy_intercept_errors on;</div>



<div>            recursive_error_pages on;</div><div><br></div><div>            rewrite ^(.*)$  $SomeHeaderFromBack1 break;</div><div><br></div><div>            proxy_set_header   Host             <a href="http://backstore.nodevice.com" target="_blank">backstore.nodevice.com</a>;</div>



<div>            proxy_set_header   X-Real-IP        $remote_addr;</div><div>            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;</div><div><div>            &lt;skipped&gt;</div><div>        }</div>



</div><div><br></div></div><br>-- <br>С Уважением,<br>Костенко Евгений<br><br>моб: +7(928)2961142<br>icq: 101241013<br>jabber: <a href="mailto:nobody.mail@gmail.com" target="_blank">nobody.mail@gmail.com</a><br><br>
</div>
<br>_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://nginx.org/mailman/listinfo/nginx-ru</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>Faithfully yours, Eugenie<br>ICQ #701217<br>GTalk <a href="mailto:ekruglov@gmail.com">ekruglov@gmail.com</a><br>