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

  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

    0
    1. Webmaster
      max_execution_time = 100     ; Maximum execution time of each script, in seconds
      
      0
    2. Merci Jeff, j'vais tester ça de ce pas...
      0
    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 ???
      0
    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]||=--
      0
  2. Webmaster
    Que donnent les logs de PHP ?
    0
    1. 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+
      0
      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 ?!?
        0
      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...
        0
      3. @JeffThanks m'sieur Jeff !
        Sinon, autre chose (completement différent) comment peux t-on devenir partenaire de CCM (et devenir site partenaire) ???
        0