[[hebergement-mutualise:tutoriels-cpanel:taches-cron]]

Tâches cron

Icône Nom Catégorie Description
Tâches cron Avancé Permet l'ajout de tâches planifiées sur votre hébergement

L'outil tâches cron permet l'ajout de tâches planifiées sur votre hébergement. Une tâche planifiée permet d’exécuter automatiquement une commande (ou un script) à une date et une heure spécifiées à l'avance ou selon un cycle défini (toutes les heures, toutes les semaines etc…).

Dans cPanel, l'ajout d'une tache cron se fait facilement. Dans un premier temps, il faut sélectionner une périodicité dans le premier formulaire. Des options pré-configurées sont disponibles, n'hésitez pas à les utiliser. En utilisant les options pré-configurées (paramètres communs), les différentes cases pour “minute, heure, jour, mois, jour” sont remplies automatiquement.

Sélection de la périodicité des tâches cron

Sélection de la périodicité des tâches cron

Ensuite, il faut définir la commande à exécuter. Plusieurs variantes sont possibles et il y a également plusieurs pièges courants. Voici les formats de commandes les plus courants :

    • Il ne faut pas oublier la partie -o /dev/null sinon un fichier va se générer à la racine de votre hébergement à chaque exécution de la tâche.
    • Il faut bien placer l'adresse web entre double guillemet, c'est très important et d'autant plus si vous faites un passage de paramètres dans l'adresse comme ?param1=valeur&param2=valeur.
  • /opt/alt/phpxx/usr/bin/php /home/monUtilisateur/public_html/dossier/cron.php (Vous devez remplacer xx par la version de PHP souhaité 55 pour 5.5 ou 70 pour 7.0).
    • Il faut faire attention au chemin, il doit être absolu. Si besoin, vous pouvez le récupérer dans le gestionnaire de fichier de cPanel ou bien remplacer par une commande similaire comme php -q ~/public_html/dossier/cron.php. Le ~ représente la racine de votre hébergement.
    • Il ne faut pas oublier l'option -q pour quiet (ne rien renvoyer)
  • /home/monUtilisateur/monscript.sh
    • Le fichier doit être en chmod 755
    • Le script doit contenir un shebang
    • Le chemin doit être valide

Au final, vous devez avoir quelque chose de similaire à ceci :

Configuration finale d'une tâche cron

Configuration finale d'une tâche cron

Dans les tâches cron, il est possible de configurer un retour par email. Pour faire cela, il suffit d'indiquer l'adresse email dans le champ prévu à cet effet dans l'outil.

Définition de l'adresse email d'alerte pour les tâches cron

Définition de l'adresse email d'alerte pour les tâches cron

Plusieurs détails concernant cette alerte email :

  • un email est généré uniquement si le script affiche quelque chose sur sa sortie standard.
  • cela veut dire que la non réception d'un email n'est pas forcément signe que la tâche cron ne s'exécute pas, ça veut simplement dire que le script se lance mais s'exécute en silence, sans rien afficher
  • il est possible d'ajouter >/dev/null 2>&1 à la fin de certaines tâches cron pour rediriger la sortie d'affichage vers la poubelle, ce qui évite l'envoi d'un email
  • Dernière modification: 11/06/2019 09:30
  • par o2switch