ПРОЕКТЫ 


  АРХИВ 


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: Что-то я не понима ю принципов работы proxy :-/



On Tue, Jul 24, 2007 at 05:03:36PM +0400, Anton Noginov wrote:

>       Есть конфиг: 
> 
> ---------
>         server {
>                 listen       54321;
>                 access_log  logs/access_log; 
> 
>                 location /frontend.bat {
>                         proxy_pass   http://1.2.3.4:80;
>                 }
> 
> ### frontend.bat дергается как frontend.bat?counter_id=12345 
> ### и возвращает X-Accel-Redirect на некий /images/counter_54321.png 
> 
> 
>         location / {
>             root                 counter;
>             error_page           404 = /fetch$uri;
> 
> 
>         }
> 
>         location /fetch {
>             internal;
> 
>             proxy_pass           http://2.3.4.5:18081;
>             proxy_store          on;
>             proxy_store_access   user:rw  group:rw  all:r;
>             alias                counter;
> 
>         }
> 
>         }
> --------------- 
> 
>       Суть, надеюсь, понятна - получили X-Accel-Redirect на картинку, отдали 
> ее с 
> локальной fs, а если нет - ск04али с бэкэнда и закэшировали. 
> 
>       Засада в том, что на бэкэнд приходит запрос не отданый 
> x-accel-redirect, а 
> изначальный, который frontend.bat?counter_id=12345. 
> 
>       Что я делаю не так? 

У proxy_pass есть фича - если нет URI-part и URI запроса не менялось с
помощью rewrite, то используется это оригинальное URI.
Лечится так:

-             proxy_pass           http://2.3.4.5:18081;
+             proxy_pass           http://2.3.4.5:18081/;

>       ps/2: И, чтобы два раза не вставать: стОит ли ждать proxy_store с 
> хранением 
> данных в мемкэше? 

Нет.


-- 
Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.