Добро пожаловать в базу знаний

Как проверить работу cron

0
Вариант1. Проверка с помощью тестового скрипта


1) В меню "Менеджер файлов" панели управления в корневом каталоге аккаунта создаем файл cron_test. В него добавляем:

<?php

$fp = fopen("text.txt", "a");
fwrite($fp, "cron running"."\r\n");
fclose($fp);

?>

или

<?php

$time = date('H:i:s');
$file= fopen ("test.txt", "w");
fwrite ($file, $time);
fclose ($file);

?>

2) Кнопкой "Атрибуты" назначаем файлу права 777 

сron-test2.png

 

3) В меню "Планировщик (cron)" создаем команду (подробная инструкция -> тут):
/usr/bin/php /var/www/userXXXX/data/cron_test (без пробелов на конце)

cron-test3.png

4) Запускаем команду по кнопке "Выполнить"  cron-test5.png, проверяем результат. Такой скрипт раз в 2 минуты будет добавлять запись в файл test.txt

cron-test6.png

Вариант2. Проверка результата выполния команды выводом в файл

Если Вы создали задание в планировщике cron, но нет признаков его выполнения:

/usr/bin/wget -O /dev/null http://site.ru/cron.php 

Значит нужно сделать вывод в файл.

1) В меню "Менеджер файлов" панели управления в корневом каталоге сайта создаем файл test c правами 777 (права выставляются кнопкой "Атрибуты")

2) Вместо символьного файла /dev/null/ в команде cron'а после опции -O* указываем созданный файл /var/www/userXXXXX/data/имя-сайта/test, ставим ближайшую минуту выполнения (например, на сервере сейчас 12ч27мин12сек, мы поставим ближайшую 28-ю минуту). Команда будет выглядеть так:

28 * * * * /usr/bin/wget -O /var/www/userXXXXX/data/имя-сайта/test http://site.ru/cron.php >/dev/null 2>&1

*подробнее о других опциях wget можно почитать тут: https://linux.die.net/man/1/wget

3) При внесении изменений в команду будет выполнен
RELOAD (crontabs/userXXXXX),
и ровно в 28 минут будет исполнена заданная в кроне команда. Результат ее выполнения отобразится в файле test.

cron-test1.png