2014-02-10 3 views
0

У меня есть два экземпляра nginx, работающих на двух разных машинах. A действует как прокси-сервер для B, а B сам является прокси-сервером для некоторых экземпляров nodejs. B скомпилирован с ngx_http_realip_module для извлечения переадресованного X-Real-IP из A. Это конфигурация из B:nginx to nginx - удаленный адрес кажется потерянным

upstream request_proxy{ 
    server 127.0.0.1:3000; 
} 

server { 
    server_name localhost; 

    location/{ 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header Host $host; 
    proxy_set_header X-NginX-Proxy true; 
    real_ip_header X-Real-IP; 

    proxy_pass http://request_proxy; 
    proxy_redirect off; 
    } 
} 

Все я в request['headers']['x-real-ip'] является 192.168.0.1, который является внутренним IP из A. Что я делаю неправильно?
С уважением,
Alex

ответ

1

Я получил ту же ошибку, кажется, что мы должны сохранить реальный IP дополнительный как proxy_set_header realip $ remote_addr;