I'm trying to get the page from another host. I do as hph manual says:
$page = file_get_contents('http://www.example.com/');
echo $page;
But it fails and in apache log i get the following:
[Mon Oct 12 18:58:47.676454 2015] [:error] [pid 2971] [client 127.0.0.1:49434] PHP Warning: file_get_contents(): php_network_getaddresses: getaddrinfo failed: No address associated with hostname in /var/www/html/digest/ftry.php on line 2
[Mon Oct 12 18:58:47.704659 2015] [:error] [pid 2971] [client 127.0.0.1:49434] PHP Warning: file_get_contents(http://www.example.com/): failed to open stream: php_network_getaddresses: getaddrinfo failed: No address associated with hostname in /var/www/html/digest/ftry.php on line 2
While trying to figure out the reason of failure, I checked what nslookup
says. When I run nslookup http://www.example.com/
it answers something like that:
nslookup http://www.example.com/
Server: 94.242.57.130
Address: 94.242.57.130#53
** server can't find http://www.example.com/: NXDOMAIN
When I remove http://
from domain name it works fine, returns ip. But when I try to get file with file_get_contents
without http://
, it looks for the file in the local filesystem (and it's how it's supposed to be).
I've checked phpinfo
, allow_url_fopen
is On
on both local and master levels. I've set the nameserver in my resolv.conf
to 94.242.57.130
(nearest public dns).