Creare un cron job / attività pianificata
È possibile creare i cosiddetti cron job, cioè programmi eseguiti a orari prestabiliti. Non è consentito creare cron job che vengano eseguiti più di 1 volta ogni 10 minuti. Non sono consentiti nemmeno cron job pesanti (che caricano eccessivamente il processore). Su 1 server girano infatti anche altri siti web. Lei non vuole essere disturbato dagli altri, e gli altri non vogliono essere disturbati da Lei. WebOké può interrompere i cron job se necessario. La regola è che un cron job non può durare più di 10 secondi. Se desidera eseguire cron job più spesso, ciò è consentito a partire dai pacchetti POWER WEBHOST.
Se crea più cron job, la regola vale per il totale: quindi avvii al massimo 1 cron job ogni 10 minuti. Distribuisca bene i suoi cron job, a vantaggio delle prestazioni del server.
Nel suo cron job inserisca preferibilmente questa istruzione: set_time_limit(10). In questo modo il cron job si interromperà se dura più di 10 secondi. Il cron job si imposta dal pannello di controllo.
Come si presenta un cron job
Un cron job che avvia ad esempio un programma PHP ha questo aspetto:
/usr/local/bin/php -q /home/<usrdir>/domains/<uwdomein.xx>/public_html/<taak.php>
Sostituisca <usrdir> con il nome utente di DirectAdmin, <uwdomein.xx> con il suo nome di dominio e <taak.php> con il suo script PHP.
Invio di un'e-mail dopo ogni cron job
Di default viene inviata un'e-mail al suo account e-mail predefinito. In quell'e-mail vengono riportati gli eventuali errori del cron e anche gli eventuali output. Può consultare quella casella di posta su webmail.weboke.nl inserendo come nome utente il nome del suo account, la password e il nome del server. Se non desidera più ricevere un'e-mail ogni volta, aggiunga questo dopo il cron job: /dev/null 2>&1
I percorsi sono leggermente diversi rispetto all'FTP
Deve quindi indicare il percorso completo di PHP e il percorso completo sul server del programma PHP. È diverso rispetto all'FTP: qui il percorso inizia con /home/usrdir. Sostituisca usrdir con il suo nome utente (quello del pannello di controllo).
Importante!! Un cron job non conosce il nome di dominio
Tenga presente anche che un programma PHP avviato da un cron job non sa sotto quale sito web viene eseguito. $_SERVER['SERVER_NAME'] è vuoto e anche un include non riuscirà, perché non esiste un percorso di base!!
Codice di esempio da inserire nel programma cron per evitarlo:
- $pad = "/home/<usrname>/domains/<uwdomein.xx>/public_html"; (attenzione: sostituire <usrdir> e <uwdomein.xx>!!!)
- $_SERVER['SERVER_NAME'] = 'uwdomein.xx';
- $_SERVER['DOCUMENT_ROOT'] = $pad;
- set_include_path($pad . PATH_SEPARATOR . ini_get("include_path"));
