24.01.2016 10:33, Pavel V. пишет:
Здравствуйте, Андрей.
Вы писали 24 января 2016 г., 4:45:36:
В конфиге прописано:
real_ip_header X-Forwarded-For;
real_ip_recursive on;
set_real_ip_from 94.23.0.0/16;
proxy_set_header X-Real-IP $realip_remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
На бэкнде получаю в X_REAL_IP айпи прокси а не клиента:
[HTTP_X_REAL_IP] => 94.23.156.246
[HTTP_X_FORWARDED_FOR] => 176.104.49.220, 94.23.156.246
[REMOTE_ADDR] => 94.23.156.246
Кто виноват и что делать?
Всё работает так, как вы указали в конфигурации.
Цитирую http://nginx.org/ru/docs/http/ngx_http_realip_module.html :
$realip_remote_addr - хранит исходный адрес клиента (1.9.7)
В данном случае клиентом является то, что соединилось с nginx, т.е. прокси.
Вам следует использовать переменную $remote_addr:
Поставил, результат тот же
proxy_set_header X-Real-IP $remote_addr;
Возможно также, что директива "proxy_set_header X-Forwarded-For .... " совсем
не нужна,
чаще всего это наследие копипаста. Для получения IP реального клиента
достаточно X-Real-IP.
Она-то конечно не нужна, но вот для дебага таки нужна
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru