nginx转发apache显示真实IP

来源:互联网 发布:2015广告主投放数据 编辑:程序博客网 时间:2024/05/23 00:10

来源:http://blog.chinaunix.net/uid-23766031-id-3190183.html

 

在http中加入:
        proxy_pass  http://$host:81;
        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

如果需要在访问日志中显示IP,则还需要加入下面的操作:

2.下载apache的第三方模块 mod_rpaf

下载地址:http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz

安装mod_rpaf

tar zxf mod_rpaf-0.6.tar.gz
cd mod_rpaf-0.6
/usr/local/webserver/apache/bin/apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c    #apache 2.x 安装方法(1.x的有全区别)

安装完毕,开始配置apache的http.conf配置文件,添加一下内容:

LoadModule rpaf_module modules/mod_rpaf-2.0.so

RPAFenable On
RPAFsethostname On
RPAFproxy_ips 192.168.1.253 127.0.0.1 #填写你nginx web 转发的ip地址
RPAFheader X-Forwarded-For



在php代码中获取IP的方法:
echo "IP=".$_SERVER['HTTP_X_FORWARDED_FOR'];
原创粉丝点击