proxy_set_header Host
Igor Sysoev
igor на sysoev.ru
Ср Май 25 10:16:07 MSD 2011
On Tue, May 24, 2011 at 07:29:01PM +0300, Vasil Mikhalenya wrote:
> Всех приветствую,
>
> возник вопрос, собственно конфиг ниже:
>
> так не работает:
>
> listen 192.168.1.207:8080 ;
>
> location / {
> resolver 192.168.1.200;
> proxy_pass http://$newhost;
>
> proxy_set_header Host $host; # в
> данном случае $host устанавливается без порта, соответственно все
> редиректы на бэкенде не работают(работают не верно)
> # в rfc2616 вроде как сказано что в заголовке должен присутствовать порт
> }
>
> Внимание вопрос:
> из каких соображений nginx теряет/не добавляет порт в данный заголовок?
>
>
> workaround:
> location / {
> resolver 192.168.1.200;
> proxy_pass http://$newhost;
>
> proxy_set_header Host "$host:8080";
> }
>
> Спасибо за внимание.
$host это переменная в которой нет порта.
Если нужен Host, пришедший от клиента, то можно использовать $http_host.
--
Igor Sysoev
Подробная информация о списке рассылки nginx-ru