使用Cloudflare CDN后,源站收到的请求均为Cloudflare CDN的地址,为了能够显示 真实访客ip ,需要做几步简单的设置。
宝塔设置nginx
- 点击宝塔应用商店,找到nginx,点击右边的设置
- 在配置修改中,找到
http
模块中的include luawaf.conf;
,在下面添加如下两段代码,重载nginx即可。
set_real_ip_from 0.0.0.0/0;
real_ip_header X-Forwarded-For;
- 此时在站点设置的响应日志里可以看到,访问的ip已经为真实ip了。
WordPress 设置
在套用了Cloudflare的CDN后,wordpress后台统计软件显示的ip也变成CDN的地址,通过以下设置可以显示真实访客ip。
- 进入到wordpress网站根目录下(非主题目录),找到
wp-config.php
- 在如下位置中加入几行代码即可。
//绕过 CDN 代理IP获取客户真实IP地址
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$list = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
$_SERVER['REMOTE_ADDR'] = $list[0];
}