J'ai un code cgi qui est appelé par AJAX à partir du client javascript. Cependant, le résultat de l'appel est ignoré par le client.Apache 2.2 Délais de Perl CGI, toujours expirés même avec des impressions périodiques
Sur le backend ce code se produit:
$|=1;
my $i = 0;
while (<$fh_echo>)
{
#To prevent apache timing out the cgi script.
print "." if $i % 100 == 0;
#Do stuff
$i++;
}
Malgré l'impression périodique, sur ce encore interrompue:
[warn] [client 10.23.12.87] Timeout waiting for output from CGI script
[error] [client 10.23.12.87] (70007)The timeout specified has expired: ap_content_length_filter: apr_bucket_read() failed
je figure le fait que javascript supprime la sortie ne devrait pas avoir forme d'impact sur si apache permet ou non au script cgi de continuer. Si oui, alors qu'est-ce qui se passe ici?
C'est un processus fourchu. –
Et, fermez 'STDOUT' dans l'enfant et vous quittez immédiatement dans le parent? –
Oh! La fermeture de STDOUT semble le faire fonctionner maintenant. Je vais faire d'autres tests, mais jusqu'ici je n'ai pas encore eu d'erreurs de temps. –