Правильные клиентские IP адреса в Nginx при использовании HAProxy: различия между версиями

Материал из support.qbpro.ru
imported>Vix
Нет описания правки
imported>Vix
Нет описания правки
 
Строка 10: Строка 10:


  set_real_ip_from 192.168.0.0/16;
  set_real_ip_from 192.168.0.0/16;
  real_ip_header X-Real-IP;
  real_ip_header '''X-Real-IP''';


где сеть 192.168.0.0/16 серверов HAProxy.
где сеть 192.168.0.0/16 серверов HAProxy.

Текущая версия от 21:11, 3 августа 2014

По умолчанию nginx при обработке запросов от HAProxy использует адрес сервера HAProxy.

Для того что бы работать с реальными адреса необходимо добавить в файл haproxy.cfg следующую опцию:

option forwardfor header X-Real-IP

Так же необходимо изменить настройки Nginx: 1. Nginx должен быть собран с опцией –with-http_realip_module
2. В секции http или server nginx-а необходимо добавить следующие параметры:

set_real_ip_from 192.168.0.0/16;
real_ip_header X-Real-IP;

где сеть 192.168.0.0/16 серверов HAProxy.

В логах apache, если он стоит за nginx, получить реальный IP возможно через mod_rpaf или mod_extract_forwarded.

Примечание: Эта схема будет работать только если HAProxy работает в режиме “mode http” .

взято тут
* параметры haproxy