Esto es lo que le pongo
function parametros($entrada)
{
//Analiza una URL y devuelve sus componentes en un array
$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="";
//llamada a la función anterior
$urlArray= parametros($vinculo);
//Abre una conexión de dominio Internet o Unix via sockets. Si falla devuelve falso
$sock = fsockopen($urlArray['host'], $urlArray['port'], &$errno, &$errstr, 60);
if (!$sock)
echo "No responde";
// $contesta['code'] = "No responde";
else
{
$request .= "HEAD $urlArray[path] HTTP/1.1\r\n";
$request .= "User-Agent: Valid link (<a href=\"out.php?http%3A%2F%2Fcentropromoweb.com\" target=\"_blank\">
http://centropromoweb.com</a>)\r\n";
$request .= "Host: $urlArray[host]\r\nConnection: close\r\n";
$request .= "Connection: close\r\n\r\n";
//escribe en el fichero la petición anterior
fputs($sock, $request);
//leer hasta la posición 128
//trim: Elimina espacios del principio y final de una cadena del tipo \n
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));
}
echo "Sí responde";
}
}
//le paso uno que no existe
ValidarVinculos("http://www.zaraempleo.net/PEPIN");
?>