ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
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


 




Copyright © Lexa Software, 1996-2009.