[php] Как запустить cronjob каждые X минут?


Answers

Ваш CRON должен выглядеть так:

*/5 * * * *

CronWTF действительно полезен , когда вам нужно проверить свои настройки CRON.

Может быть хорошей идеей, чтобы вывести вывод в файл журнала, чтобы вы могли видеть, что ваш скрипт тоже набрасывает какие-либо ошибки, так как вы не увидите их в своем терминале.

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

#!/usr/bin/php

таким образом вы можете назвать все это так

*/5 * * * * php /path/to/script.php > /path/to/logfile.log

Question

Я запускаю PHP-скрипт в cronjob, и я хочу отправлять электронные письма каждые 5 минут

Мой текущий (crontab) cronjob:

10 * * * * /usr/bin/php /mydomain.in/cromail.php > /dev/null 2>&1

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

<?php
$from = 'D'; // sender
$subject = 'S';
$message = 'M';
$message = wordwrap($message, 70);
mail("myemail@gmail.com", $subject, $message, "From: $from\n");
?>

Но я не получил электронное письмо через 30 минут с этой конфигурацией.




2 шага, чтобы проверить, работает ли cronjob:

  1. Войдите на сервер с пользователем, выполняющим cronjob
  2. Вручную запустить команду php:

    / usr / bin / php /mydomain.in/cromail.php

И проверьте, отображается ли какая-либо ошибка.




Links