tal como lo haces siempre te respondera , pues el servidor siempre responde a menos que no se abra el socket, 
 
La logica del script es la siguiente: 
envia una pregunta al servidor, sobre un archivo. 
el servidor le responde con una serie de codigos , las cabeceras
estas cabeceras se analizan con los eregis y se guardan en el arrray $contesta, luego tu tienes de sacar estas respuestas y procesarlas con mas codigo por ejemplo con if() 
por eso te mostraba el ejemplo 
te dejo todo otra vez a ve si no se fastidia con el foro  
<? 
function parametros($entrada)
{	   
        $ArrayUrl = parse_url($entrada);
        $port=$ArrayUrl['port'];
        $host=$ArrayUrl['host'];
        $path=$ArrayUrl['path'];
        if (!$port) $port = "80";
        if ($port != "80")   $port = $port; 
        $return['port']=$port;
        $return['host']=$host;
        $return['path']=$path; 
        return $return;
}
 function ValidarVinculos($vinculo)
{ 
         $request="";
         $urlArray= parametros($vinculo);
          $sock = @fsockopen($urlArray['host'], $urlArray['port']);
         if (!$sock) $contesta['code'] = "No responde";
         else {
            $request .= "HEAD $urlArray[path] HTTP/1.1\r\n";
            $request .= "User-Agent: Valid link (
http://centropromoweb.com)\r\n";
            $request .= "Host: $urlArray[host]\r\nConnection: close\r\n";
            $request .= "Connection: close\r\n\r\n";
            fputs($sock, $request);
	        while($str = fgets($sock, 128)) {		        
	          if (eregi("^http/[0-9]+.[0-9]+ ([0-9]{3}) [a-z ]*", $str)) $contesta['code']  = trim(eregi_replace("^http/[0-9]+.[0-9]+ ([0-9]{3}) [a-z ]*", "\\1", $str));  
		       if (eregi("^Content-Type: ", $str)) $contesta['contentType'] = trim(eregi_replace("^Content-Type: ", "", $str));
		       if (eregi("text/html", $str))  $contesta['contentType'] = "text/html"; 
		       if (eregi("^Content-Length: ", $str)) $contesta['peso'] = trim(eregi_replace("^Content-Length: ", "", $str));
		       $contesta[]=$str; 
	        }
        }	  
	     return $contesta;
} 
$vinculo="http://centropromoweb.com/index.php"; 
$var=ValidarVinculos($vinculo); 
if($var['code'] != 200) echo "<li> este ".$vinculo." arroja el siguiente codigo de problema  ".$var['code'] ; 
 else echo "este vinculo es correcto ".$vinculo;  
echo "<pre>";
print_r($var);
echo "</pre>"; 
?>  
si lo ejecutas tal cual , veras las cabeceras que manda el servidor 
en el caso de que el archivo no este , pues te manda un 404 not found 
prueba a ver,