Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: вопрос про proxy_pass и IP адр ес клиента в логе
Здравствуйте, Maillist.
Вы писали 18 сентября 2011 г., 23:02:46:
> Здравствуйте всем. На одном сервере крутится nginx, который передает
> запросы http в виртуальные машины на том же сервере через proxy_pass. Т.е.
> есть внешний
> IP адрес сервера, и алиасы для него из сети 192.168.0.0/24, на которых
> "висят" виртуальные машины.
> Когда просматриваю лог обращений http в виртуальных машинах, всегда
> вижу IP адрес клиента как 192.168.0.10 (т.е. один из алисов
> сервера), а хотелось бы видеть истинный
> IP адрес клиента, пославший http запрос.
> Вот кусок конфига:
...
> proxy_set_header X-Real-IP $remote_addr;
> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
Лично я не понимаю, зачем из конфига в конфиг бездумно делают копипаст
этой директивы (X-Forwarded-For) с этими параметрами.
При наличии заголовка X-Real-IP и его корректной обработке,
выставление X-Forwarded-For в $proxy_add_x_forwarded_for как бы даже
несколько вредно, потому что вносит дополнительное значение, которого
клиент не посылал.
> Что не так в моей конфигурации?
В этой конфигурации всё нормально. Но HTTP-сервер на виртуальной
машине должен уметь заголовки X-Real-IP _или_ X-Forwarded-For
корректно обрабатывать. Для apache это делает, например, модуль rpaf.
> Спасибо.
--
С уважением,
Pavel mailto:pavel2000@xxxxxx
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|