- A+
所属分类:工具资源
有时我们为了网站的访问速度和安全性会给网站加一层CDN,可这样一来网站获取到的访客IP地址就是CDN的节点IP而不是用户的真实IP了。不过Nginx下有个叫ngx_realip的模块可以帮助我们来解决这个问题,默认这个模块是没有添加的,所以你需要编译Nginx。这里我的环境是军哥的LNMP,添加参数很方便,在lnmp安装目录下找到lnmp.conf编辑它,在Nginx_Modules_Options里加上realip,如下所示:
Nginx_Modules_Options='--with-http_realip_module'
保存后执行./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都包括了。
我的微信公众号
我的微信公众号扫一扫
2017年7月15日 上午10:24 沙发
Warning: Use of undefined constant auto - assumed 'auto' (this will throw an Error in a future version of PHP) in /www/wwwroot/past.cmsky.org/wp-content/themes/begin5.2/inc/inc.php on line 911
们给网站的配置文件里加上这个功能,在任意一个location里加入:是加载nginx.conf里的server 任意一个location里吗?
2017年7月15日 下午2:13 1层
Warning: Use of undefined constant auto - assumed 'auto' (this will throw an Error in a future version of PHP) in /www/wwwroot/past.cmsky.org/wp-content/themes/begin5.2/inc/inc.php on line 911
@WZTBQ 加在虚拟主机的.conf里就行了,重启开一个location也可。