2013-04-22 16 views
21

Vorrei eseguire uno script PHP ogni giorno a mezzanotte. Dopo una ricerca su come farlo, sembra che il modo migliore per ottenere questo risultato sia utilizzare un lavoro CRON.Esecuzione di uno script PHP con un lavoro CRON

Se il mio script php si trovava in http://example.com/scripts/scriptExample.php, qualcuno può essere in grado di mostrare l'esempio più semplice di come sarebbe questo comando CRON?

Ho esaminato numerosi post ma non riesco a trovare un esempio abbastanza semplice da imparare e sviluppare.

Grazie in anticipo,

Dan

+0

sono in esecuzione questo script su Windows o Linux? – Adidi

+0

Credo che il server sia Linux. – djnetherton

+0

http://en.wikipedia.org/wiki/Cron '0 0 * * */percorso/su/php/percorso/su/phpscript' 0min 0ore ogni mese mese anno. php con percorso completo sul server locale, script php con percorso completo. O '0 0 * * * wget http: // example.com/scripts/scriptExample.php' – Waygood

risposta

22

Crontab ha bisogno il percorso completo del server.

0 0 * * * php /var/www/vhosts/domain.com/httpdocs/scripts/example.php 

Questo verrà eseguito tutti i giorni a mezzanotte.

+0

Questo è fantastico. Proverò questo comando una volta che lo script è stato completato. Grazie per l'aiuto! – djnetherton

+0

Questo codice non funziona con me! – moderns

+0

E perché in questo modo è facile richiedere la "pagina" tramite wget o lynx in questo modo: http://hardforo.com/thread-460-post-1234.html – boctulus

0

Si sta utilizzando una società per ospitare il vostro sito web?

Come si dovrebbe avere un'icona nel tuo c panel chiamato cron jobs da lì si può dire quale script da eseguire e quando.

+0

Sono sì. Sembra promettente Chris. Darò un'occhiata. – djnetherton

+0

Il mio cPanel ha questo Chris che è fantastico. Tuttavia, il comando effettivo che devo fornire è quello con cui ho bisogno di aiuto ora. Un esempio di come appare questo comando sarebbe fantastico! – djnetherton

+0

Ok la riga di comando sarebbe simile a questa. usr/bin/php -q –

1

Quindi qualcosa di simile:

00 * * * * /usr/local/bin/php /home/john/myscript.php 

Il 00 * * * * significa oraria /usr/local/bin/php - dove php motore principale è in /home/john/myscript.php - lo script da eseguire (percorso fisico)

È possibile utilizzare anche la chiave @hourly speciale:

@hourly /usr/local/bin/php /home/john/myscript.php 
3

Se si dispone di un accesso sudo al server linux: - Quindi effettuare le seguenti operazioni

sudo crontab -e 

Si aprirà la scheda cron per voi sul vostro server.

prossima cosa è che devi fare una voce di cron per il file che si desidera eseguire

00 00 * * * /usr/local/bin/php "path of the php file which you want to execute" 

00 00 * * * questo verrà eseguito il tuo cron a mezzanotte tutti i giorni, significa in 0ore e 0mins

+2

Poiché entrambi sono 0. I suoi 0 minuti, 0 ore per essere precisi, l'ordine è: MINS ORE DAYOFMONTH MONTH DAYOFWEEK # command # – Waygood

Problemi correlati