Dreamhost - script PHP et tâche cron
Tagged:  •  

Vous voulez exécuter un script PHP à intervalles régulier sur votre hébergement Dreamhost, toute les 5 minutes, toute les heures une fois par jour, tous les dimanche... voici la recette.

Sur la première ligne de votre script PHP vous devez rajouter la ligne suivante :

#!/usr/local/bin/php -q

ce qui donne

#!/usr/local/bin/php -q
< ?php
votre script ici ...
?>

Ensuite vous vous connectez en SSH sur votre compte dreamhost

Sous linux vous tapez dans une console

ssh monuser@moncompte.com

Sous windows j'utilise cygwin (émulateur linux), mais il y a peut être un autre moyen de faire du ssh, je ne sais pas...

Vous devez maintenant configurer votre crontab, le fichier de configuration de votre programme cron qui va vous permettre d'exécuter à horaire fixe votre script.

pour éditer votre crontab

crontab -e

pour afficher votre crontab et vérifier que votre modification a été prise en compte

crontab -l

pour supprimer votre crontab

crontab -r

dans votre fichier de configuration vous allez indiquer la fréquence d'exécution et le fichier a exécuter sous la forme de 5 nombres et la commande à exécuter, comme par exemple

30 12 * * * wget http://mondomain/monscript.php

dans cet exemple le script sera exécuter tous les jours à 12h30

  • le premier nombre correspond aux minutes (0 à 59)
  • le second aux heures (0 à 23)
  • le troisième aux jours du mois (1 à 31)
  • le quatrième aux mois (1 à 12)
  • le cinquième aux jours de la semaine (0 à 7)

dans l'exemple ci-dessous le script sera exécuté toute les heures

0 * * * * wget http://mondomain/monscript.php

C'est tout.

[modif du 28/03]
En utilisant wget dans le crontab, on retrouve des copies du script à la racine de son compte, normal wget est une commande de téléchargement.

Pour éviter ce désagrément il est préférable d'utiliser

0 * * * * /dh/cgi-system/php5.cgi /home/monuser/chemin/monscript.php

ou

0 * * * * /dh/cgi-system/php.cgi /home/monuser/chemin/monscript.php

selon la configuration de PHP choisie pour le domaine où se trouve le script.
[/modif du 28/03]

Bonjour Très interressant

Bonjour

Très interressant tout ça. Mais et quand on est pas chez dreamhost ?
Veuillez visitez cette url
http://www.casimages.com/img/jpg/mini_070428033549516909.jpg

Elle présente un aperçu de ma table cron ou page cron.

Mon but est d'executer une page tous les jours par exemples.

Merci de m'aider