Délai erreur pour fonction php FOPEN

WRInaute impliqué
Bonjour,

Je dois charger diverses pages html avec un script.
J'utilise la fonction FOPEN.
Le script fonctionne dans 90% des cas, mais il me reste 10% des tentatives qui se termionent par un message d'erreur "failed to open stream: HTTP request failed! HTTP/1.1 200 OK"
J'ai l'impression que c'est lié à des non disponibilités du serveur ce qui m'étonne quand même...
J'ai donc mis en place un test pour voir si le FOPEN s'est déroulé correctement et si ce n'est pas le cas je relance le FOPEN...
Mon problème est que le message d'erreur arrive 30 secondes après l'execution du FOPEN et que j'aimerais réduire ce délai...
D'ou la question de pouvoir régler le délai d'erreur...
Est-ce un délai PHP ou un délai APACHE???
Je ne trouve ni dans l'un ni dans l'autre un délai réglé sur 30 secondes...

Merci pour votre aide ;-)

PS: il se passe exactement la même chose en employant file_get_contents
 
WRInaute impliqué
Et si tu lisais la documentation de fopen ?

Code:
If you need fopen() on a URL to timeout, you can do like:
<?php
  $timeout = 3;
  $old = ini_set('default_socket_timeout', $timeout);
  $file = fopen('http://example.com', 'r');
  ini_set('default_socket_timeout', $old);
  stream_set_timeout($file, $timeout);
  stream_set_blocking($file, 0);
  //the rest is standard
?>
 
WRInaute impliqué
Merci FloBaoti,

La mise en oeuvre de ce qui est indiqué ne donne pas plus de résultat, le message d'erreur venant toujours après un délai de 30 secondes...
J'ai d'ailleurs un peu de mal à comprendre le bout de script...?

Mon besoin est que le message d'erreur apparaisse au bout de 10 secondes par exemple et non pas au bout de 30 secondes...
 
Discussions similaires
Haut