2017-05-25 2 views
1

Mon application a un processus qui s'exécute une fois par jour et il faut plus de 5 minutes pour terminer.mod_fcgid: lecture des données timeout

avant la fin, je reçois ces erreurs dans le fichier journal:

mod_fcgid: read data timeout in 301 seconds 
End of script output before headers: index.php 

Je sais qu'il ya plusieurs sujets Internet à ce sujet, mais personne ne résolu mon problème.

J'ai déjà essayé ces changements:

/etc/php5/apache2/php.ini

max_execution_time = 3200 

/etc/apache2/mods-available/fcgid.conf

<IfModule mod_fcgid.c> 
    FcgidConnectTimeout 9999 
    FcgidIOTimeout 2300 
    FcgidBusyTimeout 2300 
    FcgidIdleTimeout 2300 
    BusyTimeout 2300 
    ProcessLifeTime 7200 
    IPCConnectTimeout 2300 
    IPCCommTimeout 7200 

    <IfModule mod_mime.c> 
    AddHandler fcgid-script .fcgi 
    </IfModule> 
</IfModule> 

/etc/apache2/sites-available/myapp.conf

<VirtualHost *:80> 
     ... 
     IPCCommTimeout 9999 
     IPCConnectTimeout 9999 
     FcgidIOTimeout 2300 
     FcgidBusyTimeout 2300 
     FcgidMaxRequestLen 10737418240 
     ... 
</VirtualHost> 

Après tout, je reçois toujours la même erreur après 5 minutes d'exécution. Est-ce que quelqu'un a une idée de comment le réparer s'il vous plaît?

Répondre

0

Etes-vous sûr d'avoir modifié le fichier php.ini correct? Il semble que votre application soit exécutée à partir de la ligne de commande.

Les fichiers php exécutés à partir de la ligne de commande ont généralement un fichier php.ini distinct. Vous pouvez obtenir le chemin d'accès à votre fichier php.ini en entrant la commande php -i à partir de la ligne de commande.

+0

J'ai modifié les deux fichiers php.ini. Je ne sais pas pourquoi utilise toujours la valeur par défaut (300 secondes). En tout cas merci pour votre réponse. J'ai renoncé à essayer de savoir ce qui se passe et j'ai écrit une application Java pour effectuer ce long processus. –