Considerăm că acest mesaj dat uneori de scripturi și aplicații pentru setarea sarcinilor cron: 'contact your server administrator' este demn de anii '80:). Într-adevăr, fie că este vorba de panoul de administrare cPanel sau de altul, acest tip de funcție elementară a fost făcută accesibilă utilizatorilor finali: „doar fă-o”, trebuie doar să citești instrucțiunile de bază ale cPanel și acest articol dacă este necesar...
Din secțiunea cPanel, Advanced / Cron Tasks:
Atentie:
Rularea cron la un interval prea apropiat fără nevoie/justificare duce la erori, iar depășirea resurselor duce la funcționarea proastă a site-ului dvs.
În funcție de nevoile dvs. și de recomandările editorului, iată cele 2 formate A și B ca exemple:
A. Scripturi PHP care rulează în php intern
/usr/bin/php -f /home/votreusercpanel/public_html/votredossier/votre-sous-dossier/votrefichier.php >/dev/null 2>&1
Sau
php -f /home/votreusercpanel/public_html/votredossier/votre-sous-dossier/votrefichier.php >/dev/null 2>&1
(Stavilul „-f” îi spune lui PHP să execute un astfel de fișier)
(Citiți: http://php.net/manual/fr/features.commandline.options.php )
sau din nou (dacă aveți o eroare precum acces interzis:
/usr/local/bin/php -f /home/votreusercpanel/public_html/votredossier/votre-sous-dossier/votrefichier.php >/dev/null 2>&1
B. Scripturi PHP care rulează extern:
wget -q -O /dev/null "http://www.votredomaine.fr/votredossier/votre-sous-dossier/votrefichier.php" >/dev/null 2>&1
Sau
/usr/bin/wget -q -O /dev/null "http://www.votredomaine.fr/votredossier/votre-sous-dossier/votrefichier.php" >/dev/null 2>&1
Sau
curl -s "http://www.votredomaine.fr/votredossier/votre-sous-dossier/votrefichier.php" >/dev/null 2>&1
NB:
1. Adăugarea acestui lucru ajută la dezordinea serverului, astfel încât să nu execute toate cronurile în aceeași secundă (ssh trebuie activat în funcție de caz):
somn $(expr $RANDOM \% 35);
Exemplu de integrare, pus la începutul cronului:
somn $(expr $RANDOM \% 35); /usr/bin/wget -q -O /dev/null "http://www.votredomaine.fr/votredossier/votre-sous-dossier/votrefichier.php" >/dev/null 2>&1
2. Evitați să puneți cronuri cu minute la valoarea 0 și, mai ales, diluați minutele dintre cronurile dvs. pentru a evita un conflict de aplicație locală
3. Pentru cronurile wget, adăugarea -q -O /dev/null evită scrierea unui fișier în contul dvs. de fiecare dată când cron este executat
4. Adăugarea >/dev/null 2>&1 vă permite să opriți e-mailurile trimise la fiecare execuție
Scripturi specifice și SHELL dacă cronurile tradiționale nu funcționează
A. cron cu script sh
sh /home/votreusercpanel/public_html/votredossier/votre-sous-dossier/votrefichier.sh
B. Specificitatea anumitor scripturi cron care implică comenzi shell și/sau shell_exec, ne aflăm într-un mediu virtualizat cu izolarea contului sistemului CageFS. Trebuie să introduceți acest lucru în crontab prin carcasă:MAILTO="user@votremail.com"
Apoi adăugați cron-ul pur și simplu prin cpanel, exemplu:
SHELL="/usr/local/cpanel/bin/jailshell"
PATH="/usr/local/bin/:/usr/bin:/bin"
* * * * * php -f /home/votreusercpanel/votredomaine.com/cron.php >/dev/null 2>&1
NB: dacă este necesar, verificați și adaptați setările implicite php.ini în cpanel, consultați: disable_functions, citiți documentul CMS/modul sau contactați editorul
Atentie:
opțiunea -f poate să nu fie potrivită pentru anumite scripturi, cum ar fi la optimizarea wordpress prin dezactivarea wp-cron.php în wordpress...Dezactivați wp-cron în wordpress adăugând acest lucru în wp-config.php:
define('DISABLE_WP_CRON', true);puis ajout du cron dans cpanel (exécution toutes les 10 minutes recommandée minimum, et remplacer par votre domaine) :
/usr/bin/wget -q -O /dev/null "https://www.votresiteweb.fr/wp-cron.php?doing_wp_cron"