RokSlideshow
Lancer un script PHP automatiquement sur un serveur Apache |
|
|
|
|
Vous devez lancer une fonction php ou un script de manière régulière ? Voici le tutorial pour réaliser cette opération sur un serveur linux, mutualisé ou dédié, en utilisant le programme Crontab.
Définitions
Définition : Crontab : programme sous linux permettant d'éditer les tables de CRON. Cron est le programme qui permet de lancer des taches à heure fixe automatiquement.
Sur un serveur dédié
Sur la majorité des distributions Linux, le fichier crontab se trouve dans le dossier /etc/crontab ou /etc/cron.d
Au préalable, il est important de VERIFIER le bon fonctionnement de votre script PHP. Sur la console de votre serveur lancer le script : php -f /chemin-script/script.php
Pour éditer le fichier
Dans le dossier cron.d taper : crontab -e l'éditeur par défaut est VI.
Taper i pour insérer la nouvelle commande
La programmation des tâches
mm hh jj MMM JJJ chemin tache/tache > chemin log/log
mm: minutes de 0 à 59 hh: heures de 0 à 23 jj: jour du mois de 1 à 31 MMM numéro du mois de 0 à 12 JJJ: jour de la semaine (0= dimanche) tache: script ou commande à lancer log: nom du fichier log ou sera enregistré le journal des taches. Si cette information n'est pas précisé, cron enverra un mail à chaque lancement du script. Pour annuler cet envoi il faut ajouter /dev/null
mm hh jj MMM JJJ peuvent être remplacés par des * correspondants à la validation de chaque période
ExemplesTous les jours à minuit 10
10 00 * * *
Toutes les heures+ 30 minutes (11h30,12h30,13h30,14h30, ...)
30 * * * *
Tous les 25 du mois à 00h30
30 0 25 * *
Toutes les 10 minutes
*/10 * * * *
Toutes les 2 heures
* */2 * * *
dans le cas de notre script php à lancer toutes les nuits à 3h00
0 3 * * * php -f chemin/script.php >script.log
Enregistrer le fichier crontab:wq
Redémarrer Cron
Sur la console du serveur : taper cron restart Il n'est pas nécessaire de redémarrer Apache.
Sur un serveur mutualisé
En fonction de votre hébergeur et de ses différentes offres, il n'est pas forcément possible d'utiliser CRON.
Par exemple chez OVH, les offres Start et 1000 GP ne le supportent pas. Par contre c'est possible pour les autres offres : Tous les détails sur : http://guides.ovh.com/MutualiseCron
Si votre hébergeur ne vous permet pas de lancer vous même vos scripts, il vous reste la délocalisation!
En effet, des spécialistes du webmonitoring vous proposent de gérer vos scripts.
A voir par exemple sur : http://www.webcron.org/ ou le service est payant (à partir de 1€ pour 10 000 tâches)
|
| Mise à jour le Mardi, 07 Juillet 2009 11:29 |








