Настройка Cron в DirectAdmin

Материал из wiki.owlhost.net
Перейти к: навигация, поиск

Содержание


[править] Общее понятие о Cron

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

[править] Создание задания в DirectAdmin

При использовании панели управления хостинг-аккаунтом DirectAdmin, добавить новое Cron задание или отредактировать существующее довольно просто. Для добавления нового задания в планировщик задач Cron, необходимо выполнить следующие действия: Авторизоваться в панели управления DirectAdmin (обычно адрес панели выглядит следующим образом: http://IP_сервера:2222 или http://имя_вашего_домена:2222),выбрать меню "Планировщик заданий Cron" в разделе "Расширенные возможности" и в пункте "Создать новое задание" заполнить все поля в соответствии с Вашими требованиями.

[править] Примеры Cron заданий

Рассмотрим добавление Cron задания на конкретном примере: Имеется хостинг аккаунт account, у которого в свою очередь имеется домен domain.com, в каталоге этого домена, расположен PHP скрипт cron.php, который необходимо выполнять каждый час.

Авторизуемся в DirectAdmin, выбираем пункт меню "Планировщик заданий Cron" и приступаем к настройке задания.

Минута      1
Час         */1
День месяца *
Месяц       *
День недели *
Команда /usr/local/bin/php /home/account/domain.com/public_html/cron.php > /dev/null

Нажимаем Добавить, после чего задание будет добавлено и появится в списке заданий,который расположен ниже. Указанные нами значения, означают следующее: Выполнять в первую минуту, каждого часа,любого дня месяца/месяца/дня недели, т.е. указанный нами скрипт будет запущен в 00:01 01:01 02:01 и т.д. В поле команда, мы указываем /usr/local/bin/php - путь к интерпретатору PHP(зависит от настроек сервера) /home/account/domin.com/public_html/cron.php - путь к требуемому скрипту,начиная от корневого каталога сервера(не аккаунта), > - перенаправление стандартного вывода(результата) /dev/null - в никуда.

Ниже рассмотрим еще несколько примеров:

Минута      0,15,30,45
Час         1-3
День месяца *
Месяц       *
День недели *
Команда /usr/bin/perl /home/account/domin.com/public_html/cron.pl > /home/account/domin.com/public_html/result_cron_perl.txt

Здесь

Минута      0,15,30,45
Час         1-3

Означает: выполнять в первую,пятнадцатую,тридцатую и сорок пятую минуту в период с часа до 3(включительно). т.е. задание выполнится в 01:00 01:15 01:30 01:45 02:00 02:15 и т.д. последний раз будет запущено в 03:45.Значение поля Минута в данном случае можно заменить на */15 т.е. каждые пятнадцать минут.

/home/account/domin.com/public_html/result_cron_perl.txt 

вывод результата работы скрипта перенаправлен в файл,который расположен в корневом каталоге домена и имеет название result_cron_perl.txt

Кстати, перенаправляя вывод в файл, можно "отлавливать" ошибки при выполнении скрипта, т.к. в случае возникновения таковой, текст ошибки будет записан в указанный файл как результат работы скрипта.

Минута      1-20
Час         1,5
День месяца 15-20
Месяц       1,5
День недели 2
Команда /usr/bin/wget -O /dev/null http://www.domain.com/cron.php

Задание будет выполняться с первой по двадцатую минуты(ежеминутно) первого и пятого часа,во вторник,в период с пятнадцатого по двадцатое числа,в январе и мае месяце.