Неправильный remote addr

zdm nginx-forum на nginx.us
Сб Авг 21 09:05:27 MSD 2010


Имеется такой конфиг:

#SERVER_1
server {
        listen                   78.159.118.168:81;
        listen                   78.159.118.162:81;
        listen                   78.159.118.162:80;

        location / {
            proxy_pass             http://78.159.118.162:8080;
            proxy_set_header  X-Real-IP                $remote_addr;
            proxy_set_header  X-Forwarded-For 
$proxy_add_x_forwarded_for;
        }
}

#SERVER_2
server {
    listen                   78.159.118.162:8080;   

    location / {
        fastcgi_pass     unix:/tmp/fcgi.sock;
        fastcgi_param  QUERY_STRING          $query_string;
        fastcgi_param  REQUEST_METHOD        $request_method;
        fastcgi_param  CONTENT_TYPE          $content_type;
        fastcgi_param  CONTENT_LENGTH        $content_length;
        fastcgi_param  HTTP_X_REAL_IP        $http_x_real_ip;
        fastcgi_param  HTTP_X_FORWARDED_FOR 
$proxy_add_x_forwarded_for;
        fastcgi_param  PATH_INFO             $uri;
    }
}


Клиентские запросы приходят на SERVER_1, он
проксирует их на SERVER_2, а тот, в свою
очередь, на FCGI приложение.
Проблема:
Значение переменной $remote_addr в конфиге
SERVER_2 всегда равно 78.159.118.162, не зависимо
от того, на какой ip пришел клиентский
запрос на SERVER_1 (на 78.159.118.162 или на
78.159.118.168).
Разве при проксируемый запрос не
должен отправляться с того-же адреса,
на который пришел клиентский запрос?

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,121999,121999#msg-121999




Подробная информация о списке рассылки nginx-ru