Temps d’exécution PHP maximum

Dans mon Plesk 11, PHP 5.4.7. Apache / 2.4.3 system, lorsque je crée des tâches cron, je reçois cette erreur du fichier error.log.

[Tue Mar 19 21:33:18 2013] [warn] [client 88.44.55.66] mod_fcgid: read data timeout in 45 seconds [Tue Mar 19 21:33:18 2013] [error] [client 88.44.55.66] Premature end of script headers: index.php 

J’ai donc vérifié le temps d’exécution avec ceci:

 echo ini_get('max_execution_time'); 

J’ai cette valeur: 1560000

Cela ne semble pas être un problème de délai d’expiration, mais j’obtiens une erreur de délai d’attente?

Répondez pour la référence future:
Editez le fichier /etc/httpd/conf.d/fcgid.conf avec vim.
Remplacez FcgidIOTimeout 45 par FcgidIOTimeout 600 .
Redémarrez Apache. Le délai d’attente CGI rapide sera alors résolu.

C’est un mod_fcgid attente mod_fcgid , pas un délai d’attente PHP. Jetez un coup d’œil à la documentation de mod_fcgid pour savoir comment la modifier, en particulier chez FcgidIOTimeout .

Les scripts Cron, s’ils sont correctement compilés, ne doivent pas être exécutés via apache. Votre erreur indique que vous rencontrez un délai d’attente défini par mod_fcgi.

Si vous y accédez via http dans votre cronjob, alors cela fonctionnera comme une requête de page Web et il sera peut-être affecté par le délai d’attente d’Apache car Apache est impliqué dans le processus. Vous pouvez exécuter le script php directement avec un chemin absolu en utilisant un interpréteur php pour contourner apache