запустить cronjobs и отправить на электронную почту проблемы

StackOverflow https://stackoverflow.com/questions/1855227

  •  13-09-2019
  •  | 
  •  

Вопрос

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

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

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

мой код выглядит так.

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

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

Это было полезно?

Решение

Прежде всего, насколько я помню, 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.

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


РЕДАКТИРОВАТЬ

Я провел небольшой тест, и обычный способ 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!";

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top