par
Ripat » 30 août 2006, 07:47
Dans tous les cas, il faut indiquer le chemin complet de la commande. Par exemple:
Code : Tout sélectionner
35 14 * * * /usr/bin/wget –q –O - http://www.lurldemonsite/monscript.php
Cron ne connait pas la variable d'environnement PATH puisqu'il travaille hors shell. On peut aussi rajouter un PATH dans le crontab:
Petit truc pour vérifier le path d'une commande:
Quant à invoquer directement php-cli, faire attention aux modules qui sont inclus plutôt que compilés dans php-cli. Faire un
php -m pour voir ce qui est compilé.
S'il manque un module nécessaire à l'exécution du script, on peut créer son propre php-cli.ini et le charger avec l'option
-c
Code : Tout sélectionner
# php-cli.ini
extension_dir = "/usr/lib/php4/20020429"
extension=mysql.so
Code : Tout sélectionner
35 14 * * * /usr/bin/php -c /etc/php-cli.ini /var/www/monsite.com/monscript.php
Ou bien charger, avec la même option, le php.ini principal.
Dans tous les cas, il faut indiquer le chemin complet de la commande. Par exemple:
[code]35 14 * * * /usr/bin/wget –q –O - http://www.lurldemonsite/monscript.php[/code]
Cron ne connait pas la variable d'environnement PATH puisqu'il travaille hors shell. On peut aussi rajouter un PATH dans le crontab:
[code]PATH=/sbin:/bin:/usr/sbin:/usr/bin[/code]
Petit truc pour vérifier le path d'une commande:
[code]$ which wget[/code]
Quant à invoquer directement php-cli, faire attention aux modules qui sont inclus plutôt que compilés dans php-cli. Faire un [b]php -m[/b] pour voir ce qui est compilé.
S'il manque un module nécessaire à l'exécution du script, on peut créer son propre php-cli.ini et le charger avec l'option [b]-c[/b]
[code]# php-cli.ini
extension_dir = "/usr/lib/php4/20020429"
extension=mysql.so
[/code]
[code]35 14 * * * /usr/bin/php -c /etc/php-cli.ini /var/www/monsite.com/monscript.php[/code]
Ou bien charger, avec la même option, le php.ini principal.