IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    让位于反向代理后的wordpress获得真实ip

    崔 天一发表于 2015-04-17 13:11:04
    love 0

    由于freeshell使用nginx作为反向代理,导致apache不能获取到客户端的ip,从而wordpress中评论的ip地址都显示为了nginx反向代理的ip。

    在apache上安装mod_rpaf插件,将nginx设置的

    X-Real-IP
     变量中的真实ip复制到
    X-Forwarded-For
     变量内:

    下载插件:

    wget http://drupion.com/sites/default/files/mod_rpaf-0.6.tar_.gz

    编译安装:

    yum install httpd-devel
    tar zxvf mod_rpaf-0.6.tar_.gz
    cd mod_rpaf-0.6
    apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c

    编辑apache的配置文件:添加一个配置文件

    /etc/httpd/conf.d/mod_rpaf.conf

    #载入模块
    LoadModule rpaf_module modules/mod_rpaf-2.0.so
    
    # mod_rpaf configuration
    #打开模块
    RPAFenable On
    #根据前端设置主机名
    RPAFsethostname On
    #将前端反向代理的ip填入xxx.xxx.xxx.xxx
    RPAFproxy_ips xxx.xxx.xxx.xxx
    #将真实X-Forwarded-For变量填入真实ip
    RPAFheader X-Forwarded-For

    但诡异的是,wordpress并不认这个

    X-Forwarded-For
     变量,需要再安装一个叫reverse-proxy-comment-ip-fix的插件,方可获取到真实的客户端ip。



沪ICP备19023445号-2号
友情链接