在另一个nginx web服务器前的nginx代理>获取正确的IP

我有一个运行在另一个nginx服务器(B)前面的nginx反向代理(服务器A)。

但是,A似乎没有正确地将IP传递给服务器B.

即使我有

proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 

这些行在我的configuration。

我知道Apache只需加载RPAF模块。

有没有类似的nginx?

干杯

这里有一个很好的模块概述: http : //wiki.nginx.org/Modules具体你需要这个: http : //wiki.nginx.org/HttpRealIpModule

一些更详细的信息将有助于你的意思是“不通过IP” – 你看到了错误的IP地址,以及你的期望。

我打算全力以赴,说你可能在日志中看到反向代理的地址,而不是客户端的地址 – 你可以改变你的日志格式来显示X-Forwarded-For头部的内容(下面的例子是对默认组合格式的调整):

 log_format proxied_combined '$http_x_forwarded_for - $remote_user [$time_local] ' '"$request" $status $body_bytes_sent ' '"$http_referer" "$http_user_agent"'; access_log logdir/access.log proxied_combined;