当前位置:厘米天空 > 建站笔记 > LNMP安装Nginx Realip模块获取访客真实IP

LNMP安装Nginx Realip模块获取访客真实IP

更新时间:2017-07-07 16:41:40浏览次数:997+次

有时我们为了网站的访问速度和安全性会给网站加一层CDN,可这样一来网站获取到的访客IP地址就是CDN的节点IP而不是用户的真实IP了。不过Nginx下有个叫ngx_realip的模块可以帮助我们来解决这个问题,默认这个模块是没有添加的,所以你需要编译Nginx。这里我的环境是军哥的LNMP,添加参数很方便,在lnmp安装目录下找到lnmp.conf编辑它,在Nginx_Modules_Options里加上realip,如下所示:

Nginx_Modules_Options='--with-http_realip_module'

LNMP安装Nginx Realip模块获取访客真实IP

保存后执行./upgrade.sh nginx来升级下Nginx就可以了。

然后我们给网站的配置文件里加上这个功能,在任意一个location里加入:

set_real_ip_from  162.158.6.0/24;
set_real_ip_from  172.68.132.0/22;
set_real_ip_from  172.68.140.0/22;
set_real_ip_from  157.119.232.0/24;
real_ip_header    X-Forwarded-For;
real_ip_recursive on;

以上的IP地址换成你使用的CDN的IP地址段,这里我添加的是CloudFlare的几个IP段。/24就是一个C,相当于0-255都包括了。