2017-10-19 214 views
0

我正在使用freegeoip为我的客户端获取ip地址的地理位置。 一切工作正常,但突然所有的错误是显示在顶部区域在网站上说,freegeoip 403禁止

严重性:警告消息: 的file_get_contents(http://freegeoip.net/json/39.37.152.1):未能 打开流:HTTP请求失败! HTTP/1.1 403禁止

当我看到问题时,我发现网站命中限制超过了,所以这就是错误显示的原因。

这是我的地盘http://www.acssynergy.com/没有任何一个有想法 ,这个错误会保持多久显示已经过了24小时, 错误仍然存​​在

回答

1

目前,如果我检查http://freegeoip.net/json/84.236.112.202

结果为:

ip "84.236.112.202" 
country_code "HU" 
country_name "Hungary" 
region_code "BU" 
region_name "Budapest" 
city "Budapest" 
zip_code "1012" 
time_zone "Europe/Budapest" 
latitude 47.5 
longitude 19.0833 
metro_code 0 

同时,您的网站http://www.acssynergy.com/给我:

A PHP Error was encountered 

Severity: Warning 

Message: file_get_contents(http://freegeoip.net/json/84.236.112.202): failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden 

Filename: controllers/Welcome.php 

Line Number: 42 

Backtrace: 

File: /hermes/bosnacweb01/bosnacweb01aw/b2306/ipg.acsadminnet/acssynergy/application/controllers/Welcome.php 
Line: 42 
Function: file_get_contents 

File: /hermes/bosnacweb01/bosnacweb01aw/b2306/ipg.acsadminnet/acssynergy/index.php 
Line: 309 
Function: require_once 

从freegeoip检查答案标题:

CF-RAY 3b0174ce90247f00-BUD 
Connection keep-alive 
Content-Encoding gzip 
Content-Type application/json 
Date Thu, 19 Oct 2017 05:49:49 GMT 
Server cloudflare-nginx 
Set-Cookie __cfduid=dc13fe607037f5a784ef21ffae22ab31d1508392189; expires=Fri, 19-Oct-18 05:49:49 GMT; path=/; domain=.freegeoip.net; HttpOnly 
Transfer-Encoding chunked 
Vary Origin 
X-Database-Date Thu, 05 Oct 2017 01:49:14 GMT 
X-Ratelimit-Limit 15000 
X-Ratelimit-Remaining 14999 
X-Ratelimit-Reset 3600 

请检查您的X-Ratelimit-Remaining。如果它为0,则必须等到X-Ratelimit-Reset才能从此站点获取值(未测试)。 如果你检查你的X-Ratelimit-Reset你会知道什么时候你可以再次连接。

另一个更改geoip提供者的解决方案。详情在这里:freegeoip doesn't work anymore

+0

嗨感谢您的答复...可以让我知道我该如何检查X-Ratelimit-Remaining ..是否有任何工具或somthing ... – usman

+0

嗨。我不是一个PHP大师(它似乎你使用PHP),你使用流。 在这种情况下'$ http_response_header'是你的变量。 来源:http://php.net/manual/en/wrappers.http.php –