Настройка cron запуск php

Планировщик CRON

Cron (Command Run ON) — планировщик задач. Используется для выполнения команд и скриптов на сервере хостинга в определённое время. Планировщик cron будет доступен после заказа услуги хостинга Linux.

Как добавить новую задачу на хостинге Linux

Управлять заданиями планировщика можно в панели управления веб-хостингом.

На виртуальном хостинге вы можете запланировать только пользовательские задачи, например, выполнение скрипта сайта. Выполнение системных задач (перезагрузка веб-сервера или сервера баз данных) недоступно.

  • Команда — введите команду для запуска, которая должна выполняться. Примеры команд приведены в разделе ниже,
  • Описание — введите описание,
  • Расписание — выберите тип расписания и в оставшихся полях задайте периодичность выполнения задания.

Обратите внимание: если вид вашей панели управления отличается от представленного в статье, в разделе «Основная информация» переключите тему с paper_lantern на jupiter.

В поле Общие параметры задайте период выполнения задания, а в поле Команда введите команду для запуска, которая должна выполняться. Примеры команд приведены в разделе ниже. Нажмите Добавить новое задание:

  • Если вы выбрали Выполнить команду, в поле Команда введите команду для запуска, которая должна выполняться. Примеры команд приведены в разделе ниже;
  • Если вы выбрали Получить URL-адрес, в поле URL-адрес укажите URL-адрес, где находится скрипт. При этом команду писать не нужно;
  • Если вы выбрали Выполнить PHP-скрипт, в поле Путь к скрипту укажите путь к скрипту относительно папки виртуального сервера, а в поле Аргументы укажите аргументы скрипта, если они есть. В поле Использовать версию PHP выберите версию PHP.

Заполните остальные поля, они одинаковы для всех типов задач:

  • Запустить — выберите в раскрывающемся списке периодичность выполнения задания и назначьте время исполнения,
  • Описание — введите описание,
  • Уведомлять — выберите тип уведомлений.
Читайте также:  Css выровнять высоту картинок

Готово, вы добавили новую задачу в планировщике cron.

Примеры команд для cron-заданий

Запуск задания через GET

GET http://domain.ru/script.php

Где http://domain.ru/script.php — URL-адрес, при обращении к которому будет выполняться сron-задание.

Запуск задания через WGET

Альтернативный вариант команды для запуска:

wget -q -O - http://domain.ru/script.php > /dev/null 2>&1

Где http://domain.ru/script.php — URL-адрес, при обращении к которому будет выполняться cron-задание.

Запуск задания через CLI

При запуске задания через GET или WGET, PHP-скрипт запускается тем интерпретатором PHP, версия которого активирована в панели управления хостингом. Если вам необходимо выполнить скрипт под другой версией PHP, запустите cron-задание через CLI.

/opt/php/7.4/bin/php -f /var/www/u1234567/data/www/domain.ru/script.php
/opt/php/7.4/bin/php -f /var/www/u1234567/public_html/domain.ru/script.php
/opt/php/7.4/bin/php -f var/www/vhosts/u1234567.plsk.regruhosting.ru/httpdocs/domain.ru/script.php
  • 7.4 — версия PHP: Как узнать версию PHP на хостинге,
  • u1234567 — ваш логин хостинга: Как узнать пароль хостинга,
  • domain.ru — имя вашего домена,
  • script.php — имя файла с cron-заданием.

Обратите внимание: скрипты можно запускать через php (/opt/php/7.4/bin/php) и через php-cgi (/opt/php/7.4/bin/php-cgi). О том, какой режим подойдёт для работы скриптов, вы можете узнать у разработчиков вашего сайта.

Запуск задания через CLI с учётом параметров php.ini

Добавьте к командам ключ «-c» и пропишите полный путь до файла php.ini.

Есть два варианта пути к файлу php.ini, который зависит от того, включена ли опция php.ini для домена. Определите путь по инструкции в статье Где находятся настройки версий PHP в ISPmanager.

Если вы храните настройки PHP отдельно для каждого домена по пути /var/www/php-bin/имя-домена/php.ini, то команда выглядит так:

/opt/php/7.4/bin/php -c /var/www/u1234567/data/php-bin/domain.ru/php.ini -f /var/www/u1234567/data/www/domain.ru/script.php

Если вы используете общую версию PHP и храните настройки для всех доменов по пути /var/www/php-bin-php(номер-версии)/php.ini, то команда выглядит так:

/opt/php/7.4/bin/php -c /var/www/u1234567/data/php-bin-php(номер-версии)/php.ini -f /var/www/u1234567/data/www/domain.ru/script.php
/opt/php/7.4/bin/php -c /var/www/u1234567/php-bin/php.ini -f /var/www/u1234567/public_html/domain.ru/script.php
/opt/php/7.4/bin/php -c /var/www/vhosts/u1234567.plsk.regruhosting.ru/php-bin/php.ini -f var/www/vhosts/u1234567.plsk.regruhosting.ru/httpdocs/domain.ru/script.php
  • 7.4 — версия PHP: Как узнать версию PHP на хостинге,
  • u1234567 — ваш логин хостинга: Как узнать пароль хостинга,
  • domain.ru — имя вашего домена,
  • script.php — имя файла с cron-заданием.
Читайте также:  Date to zoneddatetime java

Как добавить новую задачу на хостинге Windows

Заказ Windows-хостинга больше недоступен. Стоимость продления для действующих пользователей остается прежней.

Воспользуйтесь инструкцией для Plesk по инструкции выше.

Если в 4 пункте инструкции вы выбрали тип задачи Выполнить PHP-скрипт, в поле Путь к скрипту укажите путь к скрипту, а в поле Аргументы укажите аргументы скрипта в зависимости от модуля:

C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP74\php.exe
c:\inetpub\vhosts\u1234567.plsk.regruhosting.ru\httpdocs\domain.ru\script.php
  • u1234567 — ваш логин хостинга: Как узнать логин хостинга,
  • domain.ru — имя вашего домена,
  • script.php — имя файла с cron-заданием.
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
Arguments: -c "(new-object system.net.webclient).downloadstring('[http://domain.ru/script.aspx](http://mysite.ru/script.aspx)')"

Где http://domain.ru/script.php — URL-адрес, при обращении к которому будет выполняться CRON-задание.

Готово, вы добавили новую задачу в планировщике cron.

Если вы выполнили все шаги инструкции, но не получили желаемого результата, это может быть связано с локальными настройками. Напишите заявку в службу поддержки, наши специалисты оперативно вам помогут!

Источник

Настройка и запуск cron на веб-сервере

Cron — это программное обеспечение для настройки автоматического выполнения заданий (скриптов) в Unix/Linux подобных системах: Centos, Debian, Ubuntu и других. Этот планировщик задач работает аналогично во всех версиях операционных систем.

Добавить скрипт в Cron можно через специальный файл «crontab», содержащий список заданий для выполнения.

Файл crontab

Пример пустого файла crontab

Как задавать время в Cron

Чтобы правильно добавить задание сначала указывается время и периодичность и в конце путь к исполняемому скрипту.

  • минута (0-59);
  • час (0-23);
  • день (1-31);
  • месяц (1-12);
  • день недели (0-6);
  • путь к исполняемому файлу.

Все значения указываются через пробел и при необходимости можно вводить множество значений через запятую.

Настройка и запуск cron на веб-хостинге

Пример

Строка следующего вида подразумевает выполнение команды каждый день в 7 утра и 7 вечера:

0 7,19 * * * home/user1/script.sh

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

Настроить Cron на хостинге проще всего через панель управления. Для примера разберем как производится настройка планировщика в ISPmanager 4.

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

  1. Открываем панель управления ISPmanager и переходим в «Планировщик» в разделе «Главное». Далее создаем новое задание, нажимая на кнопку «Создать».
  2. Заполняем поля в открывшемся редакторе и нажимаем «ОK»:
  • Команда здесь указываем полный путь (директорию) к исполняемому файлу программы или готовому рабочему скрипту.
  • Описание по желанию можно добавить краткое описание выполняемого задания.
  • Расписание— добавляем расписание с возможностью выбора режима. Режим «Базовый» — с выбором доступных вариантов и «Экспертный» — самостоятельная настройка.
Читайте также:  На следующую строку javascript

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

  1. Eсли есть возможность, нужно настроить получение отчетов по запуску заданий на почтовый адрес пользователя. Для этого открываем «Планировщик» → «Настройки» → «Адрес e-mail» и указываем адрес почты для получения. После чего нужно убедиться, что в настройках не стоит галочка напротив «Не отправлять отчет по e-mail».

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

Настройка Cron для запуска PHP-скрипта

В некоторых случаях бывает так, что автоматическое выполнение PHP-скрипта невозможно. Чаще всего подобные ошибки случаются при запуске PHP-скрипта через локальный интерпретатор. В таких случаях требуется запустить Cron вручную, для чего лучше всего использовать программу wget. В приведенном ниже примере «example.com» нужно заменить на реальный путь к вашему PHP-файлу.

0 7,19 * * * /usr/bin/wget -O - -q -t 1 ‘http://example.com/file.php’

Полезные примеры

Разберем уже приведенный выше пример, немного изменив параметры:

0 7,19 3* 7 /usr/bin/wget -O - -q -t 1/ / ‘http://example.com/file.php’ /dev/null/2>&1

Запуск PHP-скрипта будет происходить в 7:00 и 19:00 каждого воскресенья и 3 числа каждого месяца (совпадения дня недели и числа не имеют значения).

/dev/null/2>&1 — эта команда Cron добавляется в конце сценария (строки), для выполнения скрипта в фоновом режиме без уведомлений.

Помимо этого, можно добавлять другие полезные опции в конце строки планировщика Cron. Как например, для отладки запускаемого скрипта, нужен лог-файл выполнений.

То есть, если мы хотим настроить вывод результатов запуска задания Cron в определенный файл, можно изменить команду следующим образом:

0 7,19 3* 7 /usr/bin/wget -O - -q -t 1 ‘http://example.com/file.php’ > /yourdirectory/log.txt

Просмотрев такой лог, можно понять причину, почему Cron не выполняет скрипт.

Надежный хостинг для сайта. 14 дней — бесплатно!

Источник

Оцените статью