cPanel和PHP升级导致基于GeoIP的代码停止工作

时间:2016-06-14 03:20:38

标签: php pear pecl geoip

G'天,

我在cPanel下的主机上运行网站。

我一直在我网站上下载的/GeoIP/GeoLiteCountry/GeoIPASNum.dat数据库中运行Maxmind的GeoIP。

我也在我的网站上跑步 /geoip.inc& /GeLLiteCountry/GeoIP.dat

我网站的GeoIP部分运行良好。

显然cPanel大约两个月前进行了重大升级。然后,我在显示GeoIP所选内容的地方[iframe]上的网页上显示的内容消失了,并出现了两条错误行。

  

警告:输入中出现意外字符:'在第823行的/home/xxxxxxxxx/public_html/GeoIP/GeoLiteCountry/GeoIPASNum.dat

     

解析错误:语法错误,意外' ='在第823行的/home/xxxxxxxxx/public_html/GeoIP/GeoLiteCountry/GeoIPASNum.dat

然后更新GeoIPASNum.dat以尝试rio修复错误..

错误消息已更改:

  

警告:输入中出现意外字符:'在第769行的/home/xxxxxxxxx/public_html/GeoIP/GeoLiteCountry/GeoIPASNum.dat

     

警告:输入中出现意外字符:' '第769行/home/xxxxxxxxx/public_html/GeoIP/GeoLiteCountry/GeoIPASNum.dat中的(ASCII = 6)state = 0

     

解析错误:语法错误,意外' ='在第769行的/home/xxxxxxxxx/public_html/GeoIP/GeoLiteCountry/GeoIPASNum.dat

重新安装了我在cPanel升级之前的文件。我看不出应该怎么改变。错误消息消失了。但是GeoIP [来自IP]选择的内容将不会显示。

我的主持人建议可能是因为PHP从5.3升级到5.5。

以前,核心php中的一些GeoIP功能消失了。 即

geoip_country_name_by_addr($gi, "$ip");
geoip_country_code_by_addr

消失。

所以我必须把它包含在我的程序中。

我需要的唯一变量是IP 两个字母的国家代码

$country_code  = geoip_country_code_by_addr($gi, "$ip");

和ISP

$org = geoip_org_by_addr($gasnum, "$ip");

它正在运作。直到8周前的升级。我一直试图修复它。我不希望使用远程结果而不是API。

有人能够提出问题所在吗?

0 个答案:

没有答案