Configurer des tâches cron dans DirectAdmin : guide
Une tâche cron (cronjob) exécute automatiquement des tâches à des moments planifiés. Dans ce guide, nous expliquons comment configurer des cronjobs dans DirectAdmin.
Qu'est-ce qu'une tâche cron ?
Une tâche cron est une tâche planifiée qui s'exécute automatiquement à des moments définis. Exemples :
- Sauvegarde quotidienne de la base de données
- Vidage du cache toutes les heures
- Génération de rapports hebdomadaires
- Exécution périodique de scripts
Créer une tâche cron
Étape 1 : Accéder aux Cron Jobs
- Connectez-vous à DirectAdmin
- Allez dans Cron Jobs dans le menu
- Vous voyez un aperçu des cronjobs existants
Étape 2 : Ajouter une nouvelle tâche cron
- Cliquez sur Add Cron Job ou Ajouter une tâche cron
- Remplissez le timing (voir ci-dessous)
- Entrez la commande
- Cliquez sur Add ou Ajouter
Configurer le timing
Une tâche cron utilise 5 champs de temps :
| Champ | Plage | Signification |
|---|---|---|
| Minute | 0-59 | À quelle minute |
| Heure | 0-23 | À quelle heure |
| Jour | 1-31 | Quel jour du mois |
| Mois | 1-12 | Quel mois |
| Jour de semaine | 0-7 | Quel jour (0=dimanche) |
Planifications courantes
Chaque minute :
* * * * *
Chaque heure :
0 * * * *
Chaque jour à 3h00 :
0 3 * * *
Chaque lundi à 9h00 :
0 9 * * 1
Premier jour du mois :
0 0 1 * *
Exemples de commandes
Exécuter WordPress cron
/usr/local/bin/php /home/user/domains/site.fr/public_html/wp-cron.php
Exécuter un script PHP
/usr/local/bin/php /home/user/domains/site.fr/public_html/scripts/backup.php
Sauvegarde de base de données
/usr/bin/mysqldump -u user -p'motdepasse' database > /home/user/backups/db-$(date +\%Y\%m\%d).sql
Récupérer une URL (webhook)
/usr/bin/wget -q -O /dev/null https://site.fr/cron-endpoint
Vider le cache
rm -rf /home/user/domains/site.fr/public_html/cache/*
Gérer les tâches cron
Modifier
- Allez dans Cron Jobs
- Cliquez sur la tâche cron
- Modifiez le timing ou la commande
- Cliquez sur Save
Désactiver
- Ajoutez
#au début de la commande - La tâche cron est ignorée mais pas supprimée
Supprimer
- Allez dans Cron Jobs
- Sélectionnez la tâche cron
- Cliquez sur Delete
Sortie et journalisation
Sortie vers un fichier
0 3 * * * /usr/local/bin/php /path/to/script.php >> /home/user/logs/cron.log 2>&1
Ignorer la sortie
0 3* * * /usr/local/bin/php /path/to/script.php > /dev/null 2>&1
Sortie par e-mail
DirectAdmin peut envoyer la sortie des cronjobs par e-mail. Configurez cela via les paramètres Cron Jobs.
WordPress et les cronjobs
WordPress utilise wp-cron.php pour les tâches planifiées. Pour de meilleures performances :
- Désactivez WP-Cron dans
wp-config.php:
define('DISABLE_WP_CRON', true);
- Ajoutez une vraie tâche cron :
*/15* * * * /usr/local/bin/php /home/user/domains/site.fr/public_html/wp-cron.php
Problèmes courants
La tâche cron ne fonctionne pas
- Vérifiez le chemin : Utilisez des chemins complets
- Vérifiez les permissions : Le script doit être exécutable
- Vérifiez la sortie : Redirigez la sortie vers un fichier log
- Testez manuellement : Exécutez la commande via SSH
Mauvaise version PHP
Spécifiez la version PHP :
/usr/local/bin/ea-php81 /path/to/script.php
Commande non trouvée
Utilisez les chemins complets (par ex. /usr/bin/wget au lieu de wget).
Conseils
- Testez d'abord manuellement : Exécutez la commande via SSH avant de créer la tâche cron
- Utilisez la journalisation : Redirigez la sortie vers un fichier log
- Pas trop fréquent : Évitez les cronjobs toutes les minutes sauf si nécessaire
- Testez les scripts de backup : Vérifiez que les sauvegardes fonctionnent vraiment
- Utilisez des chemins complets : Évite les erreurs command not found
Astuces pour la syntaxe cron
La syntaxe cron peut être déroutante. Voici quelques outils utiles :
Crontab Guru
Utilisez crontab.guru pour vérifier votre timing cron. Entrez votre timing et voyez immédiatement quand la tâche s'exécutera.
Caractères spéciaux
- * = toute valeur
- , = liste de valeurs (1,3,5)
- - = plage (1-5)
- / = valeurs par étapes (*/15 = toutes les 15)
Besoin d'aide ?
Nous sommes là pour vous ! Si vous rencontrez un problème ou avez des questions, notre équipe de support sera ravie de vous aider personnellement. Envoyez-nous un message via le système de tickets - nous répondons généralement dans les quelques heures et sommes heureux de vous accompagner.
0 van 0 vonden dit nuttig