警告:file_get_contents():php_network_getaddresses:getaddrinfo 失败:不知道这样的主机

Warning: file_get_contents(): php_network_getaddresses: getaddrinfo failed: No such host is known

下面是我的代码:

$ip_data = json_decode(file_get_contents("http://geoplugin.net/json.gp?ip=119.82.67.243"));
echo "<pre>"; 
print_r($ip_data);
die;

当我 运行 这 2 个不同在 1 个系统上它没问题但在第二个系统上它给出错误

Warning: file_get_contents(): php_network_getaddresses: getaddrinfo failed: No such host is known

我已经检查过 allow_url_fopen=On 在两个系统上,所以请建议一些其他解决方案...谢谢

  • 尝试刷新您的 DNS 缓存并重试 :) 如果没有帮助:
  • 尝试这样做:fopen('your url','r')...但我认为这不会改变任何东西

如果第二个环境的 dns 有问题,你可以这样做:

<?php
echo gethostbyname("ONLY_ HOST_HERE_WITHOUT_HTTP_PROTOCOL"); // debug
var_export (dns_get_record ( "ONLY_HOST_HERE_WITHOUT_HTTP_PROTOCOL") ); ?>

您可以更改您的 DNS 服务器:

$dns=array("194.204.159.1","194.204.152.34","8.8.8.8","8.8.4.4"); // or you can pass DNS from your first machine :)
var_export (dns_get_record ( "ONLY_ HOST_HERE_WITHOUT_HTTP_PROTOCOL" ,  DNS_ALL , $dns ));