запустить cronjobs и отправить по электронной почте проблемы - PullRequest
0 голосов
/ 06 декабря 2009

Я хочу создавать cronjobs, которые запускаются каждые 10 минут <время сейчас </p>

и отправьте мне электронное письмо со следующим текстом.

"удаленные заказы"

мой код выглядит следующим образом.

MAILTO=”my_email@mail.com”
*/10 * * * * /var/www/php-sites/dlf/cron_jobs.php

Я проверял свои письма за последние 30 минут ... и до сих пор не получил никаких писем. я делаю это неправильно?

1 Ответ

4 голосов
/ 06 декабря 2009

Прежде всего, насколько я помню, сценарии php должны выполняться следующим образом (пример пути Ubuntu, не уверен насчет других дистрибутивов):

/usr/bin/php-cgi /var/www/php-sites/dlf/cron_jobs.php

Также вы можете сохранить выходные данные задания в файл, чтобы увидеть точные причины сбоев, для вашей работы это может выглядеть так:

*/10 * * * * /usr/bin/php-cgi /var/www/php-sites/dlf/cron_jobs.php > /tmp/cron.out 2>&1

Проверьте содержимое cron.out.

Надеюсь, это поможет.


EDIT

Я провел небольшой тест, и обычный способ Shell, похоже, тоже работает. Я создал скрипт phptest.sh (+ x) с содержанием:

#!/usr/bin/php-cgi

echo "It works this way!";

И, похоже, работает, кроме одной вещи. Он выбрасывает заголовки в стандартный вывод, как это:

***@***:~$ ./phptest.sh
X-Powered-By: PHP/5.2.10-2ubuntu6.3
Content-type: text/html

echo "It works this way!";

Но я полагаю, что мы можем как-то от них избавиться, если они будут проблемой.

Единственное преимущество этого - более короткий путь:)

...