Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

fopen fails with getaddrinfo failed

Tags:

php

I am having problems with the following code:

function http_file_exists($url){
$f=fopen($url,"r");
if($f){
    fclose($f);
    return true;
} else {
  return false;
}

} $url = "http://www.minhemmelighed.dk/Graphics/Products/55.jpg";

print http_file_exists($url);

The error it returns is:

Warning: fopen(): php_network_getaddresses: getaddrinfo failed: Name or service not known in /srv/http/webshop3/image_scraper/test.php on line 6 Warning: fopen(http://www.minhemmelighed.dk/Graphics/Products/55.jpg): failed to open stream: php_network_getaddresses: getaddrinfo failed: Name or service not known in /srv/http/webshop3/image_scraper/test.php on line 6

What can I do about this? I have rebooted the server several times.

For the record:

I can access the website in question through a browser

I am running LAMP on Arch Linux

like image 892
Olive Avatar asked Dec 27 '22 16:12

Olive


1 Answers

Rebooting a UNIX server is extremely unlikely to fix a problem. It looks like you need to check your nameserver configuration on the server. On the console of the web server (logged in as the php user, probably apache or www-data), test

dig www.minhemmelighed.dk

If this outputs an error message, check your /etc/resolv.conf. Comment out all lines and add

nameserver 8.8.8.8 # Google's public DNS server

If that solves the problem, contact the administrator of the original nameserver (or just use Google's 8.8.8.8). If it doesn't, check your connectivity and firewalls.

like image 180
phihag Avatar answered Jan 08 '23 04:01

phihag