eseguire cronjobs e inviare per e-mail problemi
Domanda
Voglio creare cronjobs che passa ogni 10 min e mail me una e-mail con il txt follow. "ordini cancellato" il mio codice simile a questo. Ho controllato le mie mail gli ultimi 30 min .. e ancora havent ricevere mail.
sono io che faccio male? MAILTO=”my_email@mail.com”
*/10 * * * * /var/www/php-sites/dlf/cron_jobs.php
Soluzione
Prima di tutto, come mi ricordo script PHP devono essere eseguiti in questo modo (ad esempio per il percorso di Ubuntu, non è sicuro su altre distribuzioni):
/usr/bin/php-cgi /var/www/php-sites/dlf/cron_jobs.php
Inoltre è possibile salvare l'output del lavoro nel file per vedere le ragioni esatte di fallimenti, per il lavoro che può apparire come:
*/10 * * * * /usr/bin/php-cgi /var/www/php-sites/dlf/cron_jobs.php > /tmp/cron.out 2>&1
Controlla il contenuto cron.out.
Spero che questo aiuti.
Modifica
Ho fatto piccolo test e usuale modo Shell sembra funzionare troppo. Ho creato lo script phptest.sh (+ x) con contenuti:
#!/usr/bin/php-cgi
echo "It works this way!";
E sembra funzionare, tranne una cosa. Si getta le intestazioni nel stdout, in questo modo:
***@***:~$ ./phptest.sh
X-Powered-By: PHP/5.2.10-2ubuntu6.3
Content-type: text/html
echo "It works this way!";
Ma suppongo che possono sbarazzarsi di loro in qualche modo, se sono un problema.
L'unico vantaggio di questo è percorso più breve:)