WordPress获取用户IP不准确的解决办法

使用IP库来显示用户的地址信息的时候,回发现不同地区的用户,他们都显示在同一个市。

这是因为你使用CDN加速

常出现的IP地址其实都是CDN节点。原因是wordpress自身没有响应x-real-ipx-forwarded-for

解决方法

将下面的代码放入wordpress根目录的/wp-config.php中的<?php的下面

/** 使用CDN获取IP */
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$list = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
$_SERVER['REMOTE_ADDR'] = $list[0];
}

在服务器的Nginx配置中server部分添加以下代码并重启Nginx,即可正常获取用户真实IP了。

listen 80;
add_header X-Real-IP $http_x_real_ip;

添加效果如下图所示:

Wordpress获取用户IP不准确的解决办法
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索