On 11/01/13 15:09, Валентин Бартенев wrote:
On Friday 01 November 2013 17:02:43 Валентин Бартенев wrote:
On Friday 01 November 2013 16:54:43 Sergey Kobzar wrote:
[..]

Далее у вас есть internal location, в котором тот же
proxy_pass/fastcgi_pass с переменной и запрос отправляется на нужный
сервер.

А переменную как выковырять из ответа?

Например так: возвращаете "X-Accel-Redirect: /redirect_to/198.51.100.1"
и он попадает в такой location:

   location ~ ^/redirect_to/(?<backend>.+)$ {
       internal;
       proxy_pass http://$backend;
   }

Если нужно сохранить оригинальный URI запроса, то это делается с помощью
set:

   set $original_uri $request_uri;

и proxy_pass в этом случает будет выглядеть так:

   proxy_pass http://$backend$original_uri;


Альтернативный, и даже наверное лучший и более простой вариант всего этого:
использовать аналогичным образом модуль ngx_http_auth_request.

http://nginx.org/ru/docs/http/ngx_http_auth_request_module.html

Хм. А этот модуль при чем? Мне не нужно авторизовывать пользователей.


--
Валентин Бартенев
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru


_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить