![](/img/trans.png)
[英]Get real Visitors IP in Apache behind Nginx reverse proxy dont work
[英]how to make nginx and apache work together for showing the real client IP?
我正在尝试在Nginx代理后面配置一个Apache服务器。 Nginx和apache实例位于两个不同的主机上。 双方服务器都在运行debian压缩。
我在前端服务器(192.168.1.30)的nginx.conf中有此文件
server {
listen 80; ## listen for ipv4
listen [::]:80 default ipv6only=on; ## listen for ipv6
server_name front.tld.org; #real hostname changed
access_log /var/log/nginx/localhost.access.log;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location / {
proxy_pass http://192.168.1.1:80; #local IP of the server running apache
}
在apache主机(192.168.1.1)上,/ /etc/apache2/mods-enabled/rpaf.conf
:
<IfModule mod_rpaf.c>
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 192.168.1.30
RPAFheader X-Real-IP
</IfModule>
我重新启动了Nginx和apache2服务。 但是在apache2 /var/log/apache2/access.log
我始终有一个来自192.168.1.30的原始IP(代理),而不是真正的客户端。
有什么问题吗 ? 关于如何调试的任何想法?
记录下来,Debian挤压配置文件有些奇怪。
以下配置有效:
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 172.27.6.74 172.27.7.17 127.0.0.1 ::1
RPAFheader X-Forwarded-For
(我必须删除<IfModule mod_rpaf.c>
)
您目前所看到的是正确的行为。 因为只有您的应用程序(在Apache上运行)才能看到真正的IP。 例如,安装示例应用程序(例如WordPress)和安装实时分析(例如Piwik)。 在WordPress页脚中插入Piwik代码,并访问WordPress网站(注销后)。 现在,Piwik将显示真实IP,而不是RPAFproxy_ips设置的IP。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.