Применимо к: все тарифы (лимиты на cron-задачи зависят от тарифа — см. таблицу ниже).
Перед началом: вам потребуется доступ к аккаунту cPanel (откройте свою услугу в личном кабинете -> Services -> My Services, затем нажмите Log in to cPanel) и точная команда, которую нужно выполнять по расписанию. Cron-задача автоматически запускает команду в заданное вами время — это удобно для запланированных задач WordPress, очистки базы данных или ваших собственных скриптов.
Создание cron-задачи
- Войдите в cPanel (см. Как войти в cPanel).
- Откройте cPanel -> Advanced -> Cron Jobs.
- (Необязательно, но рекомендуется) В разделе Cron Email укажите адрес, на который нужно отправлять вывод и ошибки. Используйте реальный почтовый ящик, который вы проверяете, — хорошо подойдёт адрес вашей Бизнес-почты (Microsoft 365 или Google Workspace).
- В разделе Add New Cron Job задайте расписание. Быстрее всего это сделать через выпадающий список Common Settings (например, «Once Per Day»), который сам заполнит пять полей времени. Чтобы задать точное расписание, введите значения в поля Minute, Hour, Day, Month и Weekday.
- В поле Command вставьте полную команду для запуска. Используйте абсолютные пути и правильный бинарный файл PHP для вашего аккаунта — самый простой переносимый вариант это
php /home/USER/public_html/script.php, либо вызовите конкретную версию, например/usr/local/bin/ea-php82, если она нужна вашему сайту. ЗаменитеUSERна ваше имя пользователя cPanel и выберите версию, совпадающую с той, что указана в MultiPHP Manager. - Нажмите Add New Cron Job.
Результат: ваша cron-задача теперь отображается в списке Current Cron Jobs и автоматически запускается в заданное вами время. В любой момент вы можете изменить её (Edit) или удалить (Delete) из этого списка.
Распространённые расписания
Пять полей времени идут в следующем порядке: минута, час, день месяца, месяц, день недели. Звёздочка (*) означает «каждый».
| Расписание | Minute | Hour | Day | Month | Weekday |
|---|---|---|---|---|---|
| Каждые 15 минут | */15 |
* |
* |
* |
* |
| Каждый час (в начале часа) | 0 |
* |
* |
* |
* |
| Раз в день в 03:00 | 0 |
3 |
* |
* |
* |
| Раз в неделю (воскресенье 02:00) | 0 |
2 |
* |
* |
0 |
| Первого числа каждого месяца, 04:30 | 30 |
4 |
1 |
* |
* |
Используется время сервера, а не ваше местное время, поэтому учитывайте это при выборе часа.
Лимиты на cron-задачи по тарифам
На каждом тарифе разрешено фиксированное количество cron-задач. Когда вы достигнете лимита, удалите одну из ненужных задач или перейдите на более высокий тариф.
| Тариф | Cron-задачи |
|---|---|
| Self-Managed Lite | 5 |
| Self-Managed Plus | 20 |
| Self-Managed Pro | Без ограничений |
| Managed Starter | 20 |
| Managed Growth | 40 |
| Managed Business | Без ограничений |
Как перейти на другой тариф, см. Как повысить или понизить тариф.
Несколько слов о cron в WordPress
В WordPress есть собственный планировщик (wp-cron), который срабатывает, когда кто-то заходит на ваш сайт. На сайте с малой посещаемостью запланированные публикации или резервные копии могут задерживаться. Обычное решение — отключить в WordPress версию, запускаемую посетителями, и добавить здесь полноценную cron-задачу, которая будет вызывать wp-cron.php через фиксированный интервал (например, каждые 15 минут).
Решение проблем с этой задачей
- Ничего не запускается / нет письма. Укажите адрес в Cron Email (шаг 3), чтобы вывод и ошибки отправлялись вам, затем проверьте этот почтовый ящик после того, как пройдёт время запуска.
- «php: command not found» или неверная версия PHP. Используйте полный путь к бинарному файлу PHP и версию, совпадающую с той, что используется на вашем сайте. Активная версия задаётся в MultiPHP Manager — см. Как изменить версию PHP.
- Permission denied. Убедитесь, что путь к скрипту указан верно и находится внутри вашего аккаунта, а любой запускаемый файл является исполняемым.
- Задача запускается в «неправильное» время. Cron использует время сервера, а не ваш местный часовой пояс — корректируйте час соответствующим образом.
- Тяжёлые или частые задачи вызывают замедление или ошибки 508. Слишком частые cron-задачи могут вывести вас за пределы лимитов CloudLinux. Запускайте их реже или оптимизируйте скрипт — см. Что такое лимиты ресурсов CloudLinux.
Комментарии
0 комментариев
Войдите в службу, чтобы оставить комментарий.