Re: Проблема с кастомными sent http заголовками
Maxim Dounin
mdounin at mdounin.ru
Wed Sep 11 13:37:54 UTC 2013
Hello!
On Wed, Sep 11, 2013 at 09:25:11AM -0400, F1restorm wrote:
> В дополнение к вышеописанной ситуации не работает конструкция вида:
> error_page 400 http://site/page?server=$sent_http_server;
>
> Всегда перенаправление выполняется на "http://site/page?server=", а не
> "http://site/page?server=nginx".
> Хотя в ответе есть заголовок "Server:nginx".
>
> Как все же заставить nginx передавать заголовок в URL?
Заголовок Server появляется лишь в тот момент, когда формируются
заголовки ответа. В то же время, перенаправление с помощью
директивы error_page происходит _до_ того, как сформирован ответ,
в том числе - его заголовок, и соответственно использовать
$sent_http_server при формировании ответа - бессмысленно.
Что можно использовать, это заголовки, полученные от бекенда -
$upstream_http_..., подробнее тут:
http://nginx.org/ru/docs/http/ngx_http_upstream_module.html#variables
--
Maxim Dounin
http://nginx.org/en/donation.html
Подробная информация о списке рассылки nginx-ru