作者:张芬921_162 | 来源:互联网 | 2014-05-28 09:40
nginx前端时,转发给后端的apache,默认的IP地址是127.0.0.1,若要获取真实的IP地址可以通过如下两种方法实现:1.在nginx.conf配置文件中的http中添加如下内容:proxy_set_headerHost$host;proxy_set_headerX-Real-IP$remote_addr;p
nginx前端时,转发给后端的apache,默认的IP地址是127.0.0.1,若要获取真实的IP地址可以通过如下两种方法实现:
1.在nginx.conf配置文件中的http 中添加如下内容:
proxy_set_header Host $host;
proxy_set_header X-Real-IP
$remote_addr;
proxy_set_header X-Forwarded-For
$proxy_add_x_forwarded_for;
2.下载apache的第三方模块mod_rpaf
(1) 下载:wget
http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
(2) 安装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
(3) 配置apache的http.conf配置文件并保存,添加如下内容:
LoadModule rpaf_module modules/mod_rpaf-2.0.so
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 192.168.1.100 127.0.0.1 #填写nginx web
转发的ip地址
RPAFheader X-Forwarded-For
(4) 最后重启 nginx和apache,查看日记是否正常。