Configurare cron per Drupal

Come configurare i cron-job per un sito Drupal

Per il buon funzionamento di un sito web in Drupal, è necessario eseguire periodicamente delle procedure di manutenzione del CMS. Grazie al sistema cron è possibile schedulare queste operazioni.

Configurare cron per Drupal

Quali sono i processi eseguiti da Drupal grazie a cron?

Tra le operazioni che Drupal esegue periodicamente troviamo:

  • Controllo dello stato degli aggiornamenti dei moduli Drupal installati
  • Esecuzione dei backup
  • Aggiornamento dell'indice per la ricerca dei contenuti
  • Invio di email
  • Ottimizzazione del database
  • Codifica di video (modulo Video)

Come si configura cron per Drupal?

Drupal utilizza uno script PHP (cron.php) che contiene le procedure per richiamare i vari processi configurati da Drupal e dai suoi moduli che devono essere eseguiti regolarmente.

In un ambiente unix-like si usa quindi il demone cron che ha il compito di eseguire lo script cron.php . La configurazione è piuttosto semplice. Da riga di comando basta digitare:

crontab -e

che aprirà il file di configurazione di cron con un editor testuale. Nel file bisogna aggiungere una riga come la seguente:

30 * * * * /usr/bin/wget -O - -q -t 1 http://www.example.com/cron.php

Dopo aver salvato il file ed essere usciti dall'editor, la nuova regola sarà installata ed attivata.

Questo esempio imposta l'esecuzione dello script cron.php allo scattare del trentesimo minuto di ogni ora.

La riga di configurazione scritta è composta da un elenco di valori (in questo caso 30 * * * *) che indicano quando deve essere eseguito il comando indicato di seguito (/usr/bin/...).

Il primo valore indica il minuto nel quale sarà eseguito il processo (0 - 59), il secondo valore indica l'orario (0 - 23), il terzo è per il giorno del mese (1 - 31), il quarto indica un mese specifico (1 - 12) ed il quinto valore serve per specificare un particolare giorno della settimana (0 - 6, dove lo zero è la domenica ed il sei sta per il sabato). Nel caso si desideri indicare tutti i valori possibili di un campo si inserisce l'asterisco "*". Se necessario si possono anche indicare degli intervalli di valori (10-20) oppure delle liste (1,2,3,4).