Ney, ney, ney. So geht das nicht. fsockopen() oeffnet einen
socket und erwartet einen *Domainnamen*, keine URL.
Ok, habe mein Script so abgewandelt und es scheint zu erkennen ob der Server erreichbar ist:
function Ping($link, $path)
{
$link = correcturl($link);
if(FileExists($link)=="1") {
$churl = @fsockopen($link, 80, $errno, $errstr, 30);
if (!$churl) {
$meldung = "0";
} else {
$meldung = "1";
fclose($churl);
}
return $meldung;
}
else {
return FileExists($link . $path);
}
}
function correcturl($link){
return str_replace("http://","",strtolower($link));
}
function FileExists($link)
{
@$fid = fsockopen($link, 80, $errno, $errstr, 30);
echo $fid;
if(!$fid) { return $errstr; }
else { fclose($fid); return 1; }
}
Allerdings überprüft nun die Funktion FileExists (noch) nicht ob die Datei existiert, ich möchte aber auch nicht die gesamte Datei runterladen, die Header reichen ja um zu sehen ob die Datei existiert oder nicht.
Kannst du mir da noch helfen?
Vielen Dank
Laurens Stoetzel