neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 18 oct. 2009 à 08:29
Salut,
Tu dis d'abord que "cela fonctionne très bien" et ensuite que le script "renvoie systématiquement que le fichier n'existe pas, alors qu'il existe dans les faits"... Je décèle comme une incohérence ;)
Bref.
Quelle ligne utilises-tu dans ta crontab pour exécuter ton script ?
Rediriges-tu la sortie d'erreur vers un fichier ? Si oui, que dit le log ? (encore faut-il générer des erreurs héhé)
Est-ce que tu spécifie bien le chemin complet de PHP ? En général, cron n'exécute pas les scripts avec l'environnement de l'utilisateur et il est alors nécessaire de spécifier le chemin complet du script : /usr/bin/php au lieu de php tout seul. Idem pour tout autre programme exécuté depuis cron.
Si ça se trouve c'est pas ça, mais comme j'ai rencontré ce problème récemment (avec un peu tout, même find ne fonctionne pas si je ne spécifie pas /usr/bin/find
Pis si c'est pas ça, on saura qu'il faut chercher ailleurs ^^
--
Neige
Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
weabow
Messages postés13Date d'inscriptionsamedi 15 mars 2003StatutMembreDernière intervention29 août 2011 18 oct. 2009 à 08:39
Merci de ta réponse.
Cela fonctionne très bien veut dire : le script php est lancé et s'exécute. Compte-tenu que je ne connais pas ce langage, je trouve déjà que c'est une réussite (pour moi).
Rediriges-tu la sortie d'erreur vers un fichier ?
Non : je ne savais même pas que c'était possible. Je veux bien le faire... Pour l'instant je m'envoie un message par mail (ne rigole pas, merci).
J'ai fait des test sur les chemins : je constate que le chemin par défaut n'est pas le même lorsque je lance depuis le web et lorsque je lance depuis cron. J'ai donc travaillé mes chemins de près pour obtenir les mêmes. Je passe dans le dur :
/var/www/vhosts/groobax.com/httpdocs/php/ et le nom du fichier
Lorsque je fais cela, ça marche bien depuis le web, mais rien du tout depuis cron (comme si le script plantait en cours de route)