Background:Chiama per URLFetch riuscita con errore di applicazione 5 per url x
Sto usando Google App Engine e sto avendo uno strano bug nel mio sito cingolato.
Ho un back-end che esegue automaticamente la scansione di un sito ogni notte. Questo è istigato da un'attività spinto a un pushQueue a causa dei limiti di tempo in php.
Problema:
Quando eseguo manualmente lo script che crea l'attività, l'attività viene completata come previsto senza errori. Tuttavia, quando cron lancia l'attività, ottengo il seguente errore.
Chiama per URLFetch riuscita con errore di applicazione 5 per url x
Codice:
function url_get_contents ($Url) {
global $retry;
try {
if (!function_exists('curl_init')){
die('CURL is not installed!');
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $Url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
return $output;
} catch (Exception $e) {
syslog(LOG_INFO, 'Caught exception: ', $e->getMessage());
if($retry > 0){
$retry -= 1;
return url_get_contents($Url);
}
else{
return null;
}
}
}
Grazie a syslog posso vedere che il $ url va bene, che mi sta facendo impazzire come funziona quando lo stesso identico script viene avviato manualmente non tramite cron.
Come posso risolvere questo?
Grazie in anticipo.
Verificare se il php ha corretta configurazione per l'ambiente CLI. – Inurosen
Ah, potrebbe essere, non credo che tu sappia come controllare questo su GAE? Ho uno php.ini, ma come faccio a sapere se è quello che usa il cli php? – Grushton94
Perché non utilizzare file_get_contents() - che utilizza anche il gestore URLFetch, ma ti dirà se il problema è cURL o meno. – Tom