点击数:5
今天在设置WordPress插件WP Statistics插件的GeoIP Collection和GeoIP 城市选项,进行保存的时候,一直无法保存成功,网上搜索了各种设置也无效,最终手动执行成功。
现象:
今天更新了CDN以及停用CNZZ统计转由WP-Statistics完成统计工作,一切都操作完成,查看访问数据时发现没有IP位置信息,经过一番排查确定是GeoIP没有启用,一顿骚操作结果发现设置报错。原因是我的网站服务器是国内的服务器上无法访问GeoIP数据库下载链接的域名,所以在设置GeoIP的时候会提示报错,然后我在Google和百度均没有找到解决方案,后来通过分析WP-Statistics的源代码发现class-wp-statistics-updates.php
写明了数据库下载地址,我们只需要修改这个下载链接即可,知道了问题所在接下来开始操作。
报错信息如下:
下载GeoIP数据库时出错: https://raw.githubusercontent.com/wp-statistics/GeoLite2-Country/master/GeoLite2-Country.mmdb.gz-cURL error 28: Connection timed out after 10000 milliseconds
版本信息
WordPress 5.6.1
WP Statistics 13.0.5
解决方案:
方案1:
1、下载数据库
Github最新数据库:GeoIP国家 GeoIP城市
我的国内同步备份(不保证是最新版):GeoIP国家 GeoIP城市
2、将下载后的文件上传到网站目录下,地址为:
如果没有wp-statistics目录,那么手动创建,将下载的文件传到其目录下,如上图。
方案2:
1、需要修改的文件路径wp-content/plugins/wp-statistics/includes/classes/class-wp-statistics-updates.php
修改代码github处的文件链接,链接可以是自己网站上的,也可以用我提供的CDN链接。https://cdn.rosm.cn/GeoLite2-City.mmdb.gz
https://cdn.rosm.cn/GeoLite2-Country.mmdb.gz
2、保存PHP后重新设置即可。
设置成功后要在优化里面更新下国家/地区的数据,不然之前的数据不会显示国家和地址。