PHP在Hostinger主机上执行file_get_contents时出错:无法打开流


PHP error doing file_get_contents on a Hostinger host: failed to open stream

我试图使用http://ip-api.com/json/api获取并显示连接到hostinguer.com上我的网站的访问者的信息。

当我做下一个,它应该响应我一个json与json格式的所有信息:

echo file_get_contents("http://ip-api.com/json/{$user_ip}");

但是我得到以下错误信息:

警告:file_get_contents(http://ip-api.com/json/[MY PUBLIC IP]): failed to open stream: Connection refused in/home/[HOSTINGUER USER]/public_html/ip2.php第31行

和其他奇怪的事情:如果我使用另一个API,它可以正常工作,并返回正确的Json!另一个API命令:

echo file_get_contents("http://ipinfo.io/{$user_ip}/json");

所以,我想使用ip-api.com API,因为结果更准确,但只有当我使用ipinfo时才有效。io API……为什么我可以向一个网站请愿,而不能向另一个网站请愿?

否则,我尝试在本地使用curl或在我的浏览器中编写,它工作正常。我也在本地的台灯里试过,两者都很完美。最后,我尝试了一些类似这篇文章:PHP file_get_contents()返回"打开流失败:HTTP请求失败!"

我想可能是hostinger配置中的问题,但是…

提前感谢!

您的IP地址被禁止。如果你使用的是普通的虚拟主机,你的外发IP地址会被其他用户共享,而这些用户的请求可能比允许的要多。

转到http://ip-api.com/docs/unban并输入服务器的传出IP地址(通过http://ipinfo.io/json检查)