J'ai un problème avec une requête CURL que je fais en php. Le problème est que, au hasard, il renvoie un timeout. Ce que j'ai remarqué, c'est qu'après avoir ajouté des pages d'erreur personnalisées, la page personnalisée 404 fonctionne, mais la page 408 une fois terminée avec curl ne renvoie rien.Code http aléatoire 408 avec CURL en PHP
Exemple de page 404: http://emailingrestauraweb.com/qweqwe
Voici mon code php:
$strCookie = 'PHPSESSID=' . $this->SessionID;
$curl_log = fopen("curl.txt", 'w');
//Setup connection
$curl = curl_init();
curl_setopt_array($curl,array(
CURLOPT_URL => $URL,
CURLOPT_USERAGENT=>$this->UserAgent,
CURLOPT_POST =>true,
CURLOPT_POSTFIELDS => http_build_query($arrParams, null, '&'),
CURLOPT_COOKIE => $strCookie,
CURLOPT_COOKIESESSION=>1,
CURLOPT_HEADER => 1,
CURLOPT_VERBOSE => 0, // Logs verbose output to STDERR
CURLOPT_SSL_VERIFYPEER => 0, // Do not verify certificate
CURLOPT_TIMEOUT => 300,
CURLOPT_CONNECTTIMEOUT=>260,
CURLOPT_NOSIGNAL => 1,
CURLOPT_RETURNTRANSFER=>1
));
//Send request
$result_json = curl_exec($curl);
$error_code =curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
J'ai essayé tout ce que je ne sais pas pourquoi cela se produit et il est trop aléatoire.
MISE À JOUR 1
J'exécuter les scripts sur 2 tranches de Slicehost. Je fais une demande d'une tranche à l'autre à un api. L'API est un logiciel OEMPRO pour l'envoi de courriels. Je comprends que 408 signifie timeout mais cela semble aléatoire et la plupart du temps c'est répétitif comme un bloc et je me demande si cela pourrait être quelque chose que ce logiciel pourrait utiliser.
Ce problème est arrivé après mon domaine où OEMPRO est en cours d'exécution a expiré pour comme 3 jours, puis il est revenu et maintenant j'ai ce problème ...
Merci pour toutes les réponses.
408 est un timeout ... vous le savez, non? – HappyTimeGopher
Ces pages d'erreur sont-elles aussi PHP? Tout htaccess aussi bien? – HappyTimeGopher
Oui, je sais que 408 est un délai d'expiration. La chose est si vous définissez une page d'erreur pour le délai d'attente alors pourquoi ne l'affiche pas. Serait-ce une erreur dans ma boucle? C'est ce que je me demande d'être sincère. –