Estoy usando CURL para obtener el estado de un sitio, si está arriba / abajo o redirigiendo a otro sitio. Quiero hacerlo lo más ágil posible, pero no funciona bien.
<?php
$ch = curl_init($url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_TIMEOUT,10);
$output = curl_exec($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return $httpcode;
?>
Tengo esto envuelto en una función. Funciona bien, pero el rendimiento no es el mejor porque descarga toda la página, pero si la elimino $output = curl_exec($ch);
vuelve 0
todo el tiempo.
¿Alguien sabe cómo mejorar el rendimiento?
fuente
curl_setopt($ch, CURLOPT_NOBODY, true);
está colgando. No estoy seguro si esto está relacionado con la versión PHP del servidor.fuente
fuente
Prueba la función " get_headers " de PHP .
Algo en la línea de:
fuente
curl_getinfo
- Obtenga información sobre una transferencia específicaCompruebe curl_getinfo
fuente
curl_exec
es necesario. IntentaCURLOPT_NOBODY
no descargar el cuerpo. Eso podría ser más rápido.fuente
fuente
use este método hitCurl para obtener todo tipo de respuesta de API, es decir, Get / Post
Función de demostración para probar la API
fuente
Aquí está mi solución necesita obtener Status Http para verificar el estado del servidor regularmente
fuente