Vai al contenuto
Posta Pannello Scegli un piano

Generatore cron

Crea un'espressione cron con i campi o una pianificazione pronta, leggila in italiano e guarda le prossime 5 esecuzioni nel tuo fuso orario.

Scegli una pianificazione pronta o compila i cinque campi: il generatore mostra l’espressione cron, la sua spiegazione in italiano e le prossime cinque esecuzioni nel fuso orario del tuo browser. Funziona anche al contrario: incolla un’espressione nel campo in alto e vedrai cosa fa davvero. Se aggiungi un comando, ottieni la riga completa per il crontab.

Come leggere un’espressione cron

Un’espressione ha cinque campi separati da spazi: minuto, ora, giorno del mese, mese e giorno della settimana. Per esempio 30 3 * * * significa ogni giorno alle 03:30, e */15 * * * * ogni 15 minuti.

  • * qualsiasi valore.
  • 5 un valore, 1,15 un elenco, 1-5 un intervallo.
  • */10 un passo: ogni decimo valore; 0-30/10 un passo dentro un intervallo.
  • Mesi e giorni della settimana si possono scrivere come jan, feb, mon, fri. La domenica è 0 oppure 7.
  • Sono riconosciute anche le scorciatoie @hourly, @daily, @weekly, @monthly e @reboot.

Una trappola classica: se sono impostati sia il giorno del mese sia il giorno della settimana, cron parte quando coincide uno qualsiasi dei due. 0 0 13 * 5 gira il 13 di ogni mese e ogni venerdì, non solo venerdì 13. Il generatore ti avvisa in questo caso.

Esempi pronti per l’hosting

  • Sostituire WP-Cron: */15 * * * * wget -q -O /dev/null "https://example.com/wp-cron.php?doing_wp_cron" >/dev/null 2>&1. Prima aggiungi define('DISABLE_WP_CRON', true); a wp-config.php, così WordPress smette di avviare i task a ogni visita.
  • Copia notturna del database: 30 3 * * * mysqldump --single-transaction dbname | gzip > ~/backup/db.sql.gz. Tieni la password in ~/.my.cnf e non nella riga di comando.
  • Pulizia settimanale dei file temporanei: 0 4 * * 0 find ~/tmp -type f -mtime +7 -delete.

Come creare i job sull’hosting passo per passo, gli errori comuni e le alternative (at e i timer di systemd) sono spiegati nella nostra guida ai cron job sull’hosting.

Cron del server o WP-Cron

WP-Cron non è un vero pianificatore: WordPress controlla se ci sono task in scadenza quando qualcuno apre una pagina. Su un sito poco visitato newsletter e backup partono in ritardo, su un sito molto visitato il controllo gira troppo spesso e aggiunge carico. Un cron del server richiama wp-cron.php a orari fissi, indipendentemente dalle visite, ed è quindi la scelta più affidabile per un sito in produzione. Cosa serve a WordPress dal server è riassunto nella guida all’hosting per WordPress, e altri modi per renderlo più veloce sono in come velocizzare un sito WordPress.

Fuso orario

Il generatore mostra le esecuzioni nel fuso orario del tuo browser. Il server esegue cron nel proprio fuso, che spesso è UTC. Controllalo con il comando date via SSH e sposta le ore nell’espressione se serve. Tutti i piani RichHost includono l’accesso SSH; vedi le nostre tariffe di hosting.

Domande frequenti

Come eseguo uno script ogni 5 minuti?

Usa */5 * * * *. Nella riga del crontab prima viene la pianificazione, poi il comando con i percorsi completi, per esempio /usr/bin/php /home/user/public_html/script.php.

Perché il mio cron job non parte?

Quasi sempre per percorsi relativi, per la mancanza del permesso di esecuzione (il calcolatore chmod ti aiuta a impostarlo) o per un ambiente diverso: cron non carica il profilo della tua shell. Usa percorsi completi e reindirizza l’output in un file di log per vedere gli errori.

Ogni quanto può girare cron?

Il passo minimo del cron standard è un minuto. La maggior parte dei task va bene ogni 5 o 15 minuti: farli girare ogni minuto carica il server senza motivo.

Come fermo le email inviate da cron?

Aggiungi >/dev/null 2>&1 alla fine del comando oppure imposta una variabile MAILTO vuota in cima al crontab.

Cosa significa 0 0 * * *?

Ogni giorno a mezzanotte (00:00) secondo l’ora del server. È lo stesso della scorciatoia @daily.