Creare un cronjob o un'attività pianificata (e cosa fare se non viene eseguito)
Con un cron job (in DirectAdmin: Cron Jobs) può far eseguire automaticamente uno script a orari prestabiliti, ad esempio ogni notte. Di seguito trova come crearne uno e cosa fare se non funziona.
Regole per i cron job
- Faccia avviare un'attività al massimo una volta ogni 10 minuti. Lo chiediamo a tutti, perché il server è condiviso con altri siti web.
- Distribuisca più cron job nel tempo e scelga un orario tranquillo, ad esempio le 03:17 invece della mezzanotte esatta.
- I cron job pesanti che sovraccaricano il server a lungo non sono consentiti. Sullo stesso server sono ospitati più siti web. Se necessario, interrompiamo un cron job. Mantenga quindi le Sue attività brevi e non le esegua più spesso del necessario.
Creare un cron job
- Acceda a DirectAdmin e, sotto Advanced Features, clicchi su Cron Jobs.
- Clicchi su Create Cron Job.
- Inserisca il minuto, l'ora, il giorno, il mese e il giorno della settimana. Inserisca sempre il minuto come numero, non come asterisco, altrimenti l'attività viene eseguita ogni minuto.
- Nel campo del comando inserisca il percorso completo, ad esempio:
/usr/local/bin/php -q /home/gebruiker/domains/jouwdomein.nl/public_html/taak.php
Sostituisca gebruiker con il Suo nome utente DA. - Clicchi su Create.

E-mail dopo ogni cron job
L'output di un cron job viene inviato all'account e-mail predefinito del Suo pacchetto, consulti L'account e-mail predefinito in DirectAdmin. Può anche inviare l'output a un indirizzo di Sua scelta con Send all Cron output to E-Mail. Se non desidera ricevere e-mail, durante la creazione clicchi su Prevent Email, oppure aggiunga dopo il comando:
>/dev/null 2>&1
Attenzione con gli script PHP
Uno script eseguito da un cron job non sa sotto quale dominio viene eseguito. $_SERVER['SERVER_NAME'] e $_SERVER['DOCUMENT_ROOT'] sono vuoti e un include con un percorso relativo può non riuscire. Inserisca quindi all'inizio del Suo script:
$pad = '/home/gebruiker/domains/jouwdomein.nl/public_html'; $_SERVER['SERVER_NAME'] = 'jouwdomein.nl'; $_SERVER['DOCUMENT_ROOT'] = $pad; set_include_path($pad . PATH_SEPARATOR . get_include_path());
Il Suo cron job non viene eseguito?
Verifichi questi punti uno per uno:
- Legga l'output. Rimuova temporaneamente
>/dev/null 2>&1e controlli l'e-mail nell'account e-mail predefinito, oppure imposti un indirizzo di Sua scelta. Spesso lì è indicato esattamente cosa non va. Può anche scrivere l'output in un file di log aggiungendo dopo il comando>> /home/gebruiker/cron-log.txt 2>&1. - Controlli il percorso. Il messaggio Could not open input file significa che il percorso dello script non è corretto. Verifichi in File Manager: il percorso inizia con
/home/gebruiker/domains/. - Controlli la versione di PHP. Con
/usr/local/bin/phpl'attività utilizza la stessa versione di PHP del Suo sito web. Se il Suo script funziona solo con un'altra versione, la modifichi in Select PHP version. - Provi il comando manualmente. Se dispone di un pacchetto con Terminal, incolli lì il comando e osservi cosa succede, consulti Accesso SSH e il Terminal in DirectAdmin. Senza Terminal, apra lo script nel browser oppure lo richiami nel cron job tramite
curl --silent https://www.jouwdomein.nl/taak.php. - Controlli i permessi. Lo script deve essere leggibile: i file devono avere i permessi 644 e le cartelle 755. Consulti Permessi di file e cartelle (chmod).
- Controlli l'orario. Verifichi in Cron Job will run: se l'attività viene eseguita quando pensa. Se nel campo del minuto c'è un asterisco, viene eseguita ogni minuto. Questo è troppo frequente.
- Controlli quanto dura l'attività. Se un'attività dura a lungo o si riavvia prima che la precedente sia terminata, può bloccarsi o far raggiungere al Suo pacchetto i suoi limiti. In tal caso suddivida il lavoro in più cicli.
date >> /home/gebruiker/cron-log.txt; prima del Suo comando.Consulti anche la guida di DirectAdmin: L'account e-mail predefinito del Suo pacchetto.
Spiegazione dettagliata con schermate: Cron Jobs: eseguire attività automaticamente nella guida di DirectAdmin.
Vuole saperne di più? Segua il Corso WordPress gratuito, lezione 6.3 Immagini, PHP e altri guadagni di velocità.
