Estoy empezando a hacer una herramienta como la comprobación de autoridad que saco Sauron para mi uso personal y aprender un poco mas.
Bueno, a lo que voy, la idea que había tenido era poner 10 proxies y 10 cuentas de moz, y asi esperar solo 1 segundo para hacer cada petición, pero me esta dando un timeout y me he quedado ahí parado.
@
Sauron, ¿puedes ponerme un ejemplo de código para ver como haces las peticiones y como esperas 10 segundos?
Yo lo he hecho con sleep(10), bueno ahora sleep(1), pero como digo me da un timeout.
Es normal cuando trabajas con Proxies que estos sean un tanto lentos si te salta el TimeOut, juega con la opción de la la librería cURL:
CURLOPT_TIMEOUT que es el número máximo de segundos que va a estar ejecutándose. Si el proxy es lento o muy lento es recomendable poner 100 o más segundos para que de tiempo a su respuesta. El problema de trabajar con proxy es su tiempo de respuesta y mucho más cuando son públicos.
Código:
curl_setopt($ch, CURLOPT_TIMEOUT, 100);
En este caso serían proxies privados
Voy a probar esto que dices. Muchas gracias
Joder, pues me sigue saliendo Request Timeout
Este es el codigo que tengo:
$requestUrl = "http://lsapi.seomoz.com/linkscape/url-metrics/".urlencode("http://" . $URL)."?Cols=".$cols."&AccessID=".$access[$i]."&Expires=".$expires."&Signature=".$urlSafeSignature;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $requestUrl);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
if (isset($proxy)) {
curl_setopt($ch, CURLOPT_PROXY, $proxy);
}
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 100);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.8) Gecko/2009032609 Firefox/3.0.8');
$data = curl_exec($ch);
Un sleep(10) puedes usar.
Enviado desde mi bq Aquaris