Pb php dans le cron (l'exécution stop ???)

Bonjour à tous,
Voila, j'ai un soucis en exécutant un fichier php via la crontab.
L'exécution manuelle se fait avec succès, mais dès qu'on passe par la crontab, l'execution à l'air de se stoppé à n'importe quel endroit, enfin, j'ai l'impression, qu'au bout d'un certain temps ça plante comme si il y avait un timeout ????
Quelqun a t-il déjà rencontré ce problème?
Merci pour votre aide.
NoBoOo

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Webmaster
    Si tu utilises PHP avec Cron, je te conseille de l'utiliser en tant que CGI, en appelant avec quelque chose du genre :

    php4 /home/toto/scripts/monscript.php > /dev/null


    Le temps d'exécution Maxi de ton script est fixé dans php.ini, mais pas celui d'Apache, celui du CGI, dont l'emplacement diffère selon les distribs :

    /etc/php4/cgi/php.ini

    1. Webmaster
      max_execution_time = 100     ; Maximum execution time of each script, in seconds
      
    2. Merci Jeff, j'vais tester ça de ce pas...
    3. Hello c'est re moi,
      Toujours le même problème, l'exécution plante au bout d'un certain temps (environ 8 sec), voici ma ligne de commande :
      /usr/local/bin/php /tmp/test.php
      J'ai même tenter de mettre "set_time_limit (0);" dans le code php, mais sans résultat...
      Le plantage survient à n'importe quel endroit du code, et génère un core...
      Une idée ???
    4. Webmaster
      @meilleurduwebTu le lance comment ?

      Tu as mis !#/usr/bin/php4 en tête de script ou bien dans ton cron tu mets "php4 monscript.php", ou bien un truc du genre :
       lynx --source http://localhost/monscript.php > /dev/null
      --
      Jeff  --=||[WM@CCM]||=--
  2. Re
    Dans mon shell, je mettais bien le chemin complet du binaire php (/usr/local/bin/php /tmp/test.php), toutefois, je n'avais pas spécifié l'interpréteur de commande. Donc j'ai mis sur la 1ere ligne :
    !#/bin/ksh
    et maintenant l'exécution du php ne plante plus...
    J'comprends pas trop pourquoi, mais bon, ça marche, c'est la principal...
    Encore merci pour ton aide Jeff et A+
    1. Webmaster
      heu... c cool mais étrange... moi j'aurais plutôt mis /usr/local/bin/php

      Tu as mis cette ligne dans ton fichier PHP ?!?
    2. @JeffNon, je n'ai pas insérer cette ligne dans le php...
      Ou faut-il la mettre ? (En 1ere ligne après <? )
      Je n'arrive pas à trouver de la doc sur l'execution php dans le cron (ou en ligne de commande), ça me soule...
    3. @JeffThanks m'sieur Jeff !
      Sinon, autre chose (completement différent) comment peux t-on devenir partenaire de CCM (et devenir site partenaire) ???