Как запустить скрипт по расписанию (cron)?

Для того, чтобы настроить запуск скрипта по расписанию, мы разберем раздел «Задания Cron» в панели управления сервером cPanel. На разных панелях управления настройка Cron отличается в деталях, но в целом процедура одинакова.

Cron — это программа, которая представляет собой планировщик задач в UNIX-подобных операционных системах. В определенное время она автоматически выполняет задания.

Например, нам нужно создавать резервную копию базы данных каждый день. Для начала, в системе Prosto System 24/7 на странице «Резервное копирование базы данных» находим путь к PHP скрипту, который нужно выполнить:

Резервное копирование с помощью cron: /home/yourlogin/public_html/pm/cron/backup.php

Далее заходим в панель управления сервером и выбираем пункт меню «Задания Cron»

В открывшемся окне, вы увидите несколько разделов. Первым идет электронная почта. Введите ваш адрес электронной почты, и если при выполнении скрипта возникнут ошибки, вам придет уведомление.

Вторым идет раздел «Добавить новое задание Cron». Как раз в нем вы и сможете настроить запуск нужного вам скрипта.

В списке «Общие параметры» выбираем «Раз в день» и в поле «Команда» вводим

php -q /home/yourlogin/public_html/pm/cron/backup.php

Внимание: данная команда не является универсальной и разные сервера могут иметь разные параметры для запуска Cron. Поэтому перед установкой Cron свяжитесь со службой поддержки вашего сервера и попросите пример команды для запуска Cron.

Вот несколько распространенных команд:

php /home/yourlogin/public_html/pm/cron/backup.php
/usr/bin/php -q /home/yourlogin/public_html/pm/cron/backup.php
/usr/local/bin/php -q /home/yourlogin/public_html/pm/cron/backup.php

Так же обратите внимание, что в системе Prosto System 24/7 запуск скрипта с помощью команды wget запрещен файлом .htaccess в папке /cron/

Возможные ошибки

При выполнении скрипта возникает следующая ошибка:

PHP Warning:  require(includes/application_core.php): failed to open stream: No such file or directory in /home/yourlogin/public_html/pm/cron/backup.php on line 6

Если у вас возникает данная ошибка, откройте файл cron/backup.php и найдите следующую строку:

chdir('../');

Замените ее на:

chdir('/home/yourlogin/public_html/pm/');

Was this article helpful?

Похожие статьи

Хотите прокомментировать?

You must be logged in to post a comment.