Непонятная ошибка в header.
Igor Sysoev
is at rambler-co.ru
Wed Sep 10 09:50:10 MSD 2008
On Tue, Sep 09, 2008 at 04:53:13PM +0300, maxhl at hitline.net.ua wrote:
> >Что предполагается достигнуть вот этим набором:
> >> proxy_set_header X_SRC_CLIENT_IP $http_x_src_client_ip; Отрабатывает только при первом открытии скрипта как в пхп так и в перл. Потом этой переменной просто нет в хеше ... :-(
> >> proxy_set_header X-Real-IP $http_x_src_client_ip; Неотрабатывает ... всегда ремоте адрес как в переменной окружения так и в логе - адрес сокс сервера.
> >>set_real_ip_from 192.168.1.4; ип с которому доверяем ...
> >> real_ip_header X-Real-IP;
>
> >proxy_set_header никакого отношения к fastcgi не имеет.
> >fastcgi модуль должен сам автоматически передавать клиентский
> >X_SRC_CLIENT_IP в виде HTTP_X_SRC_CLIENT_IP. Где его нужно выуживать
> >на стороне PHP, я не знаю.
> > > Игорь Сысоев
> > > http://sysoev.ru
> > >
> из PHP Variables ... он передается но только 1 раз ... :-( все последующие запросы с данного ипа эта переменная в хеше пустая ... :-(
Ещё раз, всё, что описывается директивами proxy_set_header, не имеет никакого
отношения к FastCGI. Никакого. Это параллельные миры.
Второе, для того, чтобы убедиться, что клиент действительно передаёт nginx'у
X_SRC_CLIENT_IP во всех запросах, нужно писать его ($http_x_src_client_ip)
в access_log. Только убедившись в этом, можно разбираться, почему nginx
не передаёт его FastCGI.
Третье,
set_real_ip_from 192.168.1.4;
real_ip_header X-Real-IP;
не имеют никакого отношение к X_SRC_CLIENT_IP. Всё, что делают эти директивы,
это подмена переменной $remote_addr на значение заголовка X-Real-IP,
пришедшего в запросе с адреса 192.168.1.4.
--
Игорь Сысоев
http://sysoev.ru
More information about the nginx-ru
mailing list