Re: Поддержка proxy-protocol в сторону бекендов

Maxim Dounin mdounin на mdounin.ru
Чт Июл 27 10:21:03 UTC 2017


Hello!

On Thu, Jul 27, 2017 at 10:11:08AM +0300, Максим Куприянов wrote:

> Подскажите, пожалуйста, есть ли сейчас в nginx поддержка PROXY-протокола
> для апстрим серверов (через proxy_pass, или в рамках upstream-секции). В
> документации нашел только про поддержку приема PROXY-соединений, но вот про
> бекенды ни слова.

Есть, но только в модуле stream.
http://nginx.org/en/docs/stream/ngx_stream_proxy_module.html#proxy_protocol

В рамках http-модуля он смысла не имеет, так как одно и то же 
соединение к бекенду может использоваться для запросов от разных 
клиентов.  Так что в случае http следует использовать 
соответствующие заголовки, такие как X-Real-IP или X-Forwarded-For:

    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

С этими заголовками умеет работать модуль realip в nginx 
(http://nginx.org/en/docs/http/ngx_http_realip_module.html) и 
различные модули в других http-серверах.

-- 
Maxim Dounin
http://nginx.org/


Подробная информация о списке рассылки nginx-ru