Меню

Настройка cron в dle



Настройка cron в dle

В DataLife Engine присутствует возможность запускать некоторые функции по расписанию. Вы можете создавать автоматически бекап БД, оптимизировать БД, а также создавать карту сайта для поисковиков. Для этого необходима поддержка вашим хостингом функции запуска приложений по расписанию (CRON). Для запуска функций по крону предназначен файл cron.php расположенный в корне вашего сайта. По умолчанию в целях безопасности возможность запуска этого файла отключена, поэтому рассмотрим как можно включить данную функцию.

Во первых мы рекомендуем обязательно в целях безопасности изменить название файла cron.php на любое другое с расширением .php

Далее откройте этот файл в текстовом редакторе и в самом начале найдите строчку

Тем самым вы разрешаете этому файлу выполнять функции в автоматическом режиме.

Далее вы можете изменить количество файлов резервных копий БД которые будут хранится на сервере. Для этого найдите чуть ниже строчку

где 5 это количество копий БД. Вы можете поставить свое собственное количество файлов. При превышении данного лимита более старые резервные копии базы данных будут автоматически удалятся.

После того как вы произвели необходимые изменения, сохраните данный файл на сервере. Теперь вам нужно добавить данный файл на запуск по расписанию (CRON) время создания и периодичность вы устанавливаете самостоятельно. Подробную инструкцию по добавлению данного файла в функцию CRON вы можете получить у вашего хостинг провайдера.

Параметры запуска данного файла, для выполнения различных функций:

Источник

Запуск функций по крону

Навигация: »Основной раздел«

Запуск функций по крону

В DataLife Engine присутствует возможность запускать некоторые функции по расписанию. Вы можете создавать автоматически бекап БД, оптимизировать БД, а также создавать карту сайта для поисковиков. Для этого необходима поддержка вашим хостингом функции запуска приложений по расписанию (CRON). Для запуска функций по крону предназначен файл cron.php расположенный в корне вашего сайта. По умолчанию в целях безопасности возможность запуска этого файла отключена, поэтому рассмотрим как можно включить данную функцию.

Во первых мы рекомендуем обязательно в целях безопасности изменить название файла cron.php на любое другое с расширением .php

Далее откройте этот файл в текстовом редакторе и в самом начале найдите строчку

Тем самым вы разрешаете этому файлу выполнять функции в автоматическом режиме.

Далее вы можете изменить количество файлов резервных копий БД которые будут хранится на сервере. Для этого найдите чуть ниже строчку

где 5 это количество копий БД. Вы можете поставить свое собственное количество файлов. При превышении данного лимита более старые резервные копии базы данных будут автоматически удалятся.

После того как вы произвели необходимые изменения, сохраните данный файл на сервере. Теперь вам нужно добавить данный файл на запуск по расписанию (CRON) время создания и периодичность вы устанавливаете самостоятельно. Подробную инструкцию по добавлению данного файла в функцию CRON вы можете получить у вашего хостинг провайдера.

Файл крона может выполнять следующие операции:

1. Создание резервной копии базы данный. Для запуска данного режима

просто запустите файл cron.php без указания ему параметров

2. Создание карты сайты сайта. Для запуска данного режима

запустите файл с параметром cron.php?cronmode=sitemap

если используется консольный запуск скрипта, то используйте php -f cron.php sitemap

Читайте также:  Настройка принтера canon pixma 280

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

3. Оптимизация базы данных. Для запуска данного режима

запустите файл с параметром cron.php?cronmode=optimize

если используется консольный запуск скрипта, то используйте php -f cron.php optimize

4. Запуск антивируса. Для запуска данного режима

запустите файл с параметром cron.php?cronmode=antivirus

если используется консольный запуск скрипта, то используйте php -f cron.php antivirus

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

Источник

FAQ: Запуск функций по крону на сайте DataLife Engine


FAQ: Запуск функций по крону на сайте DataLife Engine, позволяет множество функций автоматически по расписанию легко и просто можно с помощью приложения (CRON), как бекап БД, оптимизацию БД, создание карты сайта для поисковиков.

FAQ (полезная справка): В DLE присутствует возможность запускать некоторые функции по расписанию. Вы можете создавать автоматически бекап БД, оптимизировать БД, а также создавать карту сайта для поисковиков. Для этого необходима поддержка вашим хостингом функции запуска приложений по расписанию (CRON). Для запуска функций по крону предназначен файл cron.php расположенный в корне вашего сайта с файлами DataLife Engine. По умолчанию в целях безопасности возможность запуска этого файла отключена, поэтому рассмотрим как можно включить данную функцию.

Во первых, рекомендуется обязательно в целях безопасности изменить название файла cron.php на любое другое с расширением .php

Далее откройте этот файл в текстовом редакторе и в самом начале найдите строчку

Тем самым вы разрешаете этому файлу выполнять функции в автоматическом режиме.

Далее вы можете изменить количество файлов резервных копий БД которые будут хранится на сервере. Для этого найдите чуть ниже строчку

где 5 это количество копий БД. Вы можете поставить свое собственное количество файлов. При превышении данного лимита более старые резервные копии базы данных будут автоматически удалятся.

После того как вы произвели необходимые изменения, сохраните данный файл на сервере. Теперь вам нужно добавить данный файл на запуск по расписанию (CRON) время создания и периодичность вы устанавливаете самостоятельно. Подробную инструкцию по добавлению данного файла в функцию CRON вы можете получить у вашего хостинг провайдера.

Файл крона может выполнять следующие операции:

1. Создание резервной копии базы данный.
Для запуска данного режима просто запустите файл cron.php без указания ему параметров

2. Создание карты сайты сайта. Для запуска данного режима

запустите файл с параметром

если используется консольный запуск скрипта, то используйте

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

3. Оптимизация базы данных. Для запуска данного режима

запустите файл с параметром

если используется консольный запуск скрипта, то используйте

4. Запуск антивируса. Для запуска данного режима

запустите файл с параметром

если используется консольный запуск скрипта, то используйте

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

Источник

Cron: настройка и запуск

Введение

Размещая сайт, мы желаем добиться бесперебойной работы без нашего участия.

Читайте также:  Пользовательская настройка баланса белого

Значит, требуется автоматизировать процессы, и тут на помощь приходит cron.

Cron — программа, демон для автоматического запуска программ и скриптов на сервере в необходимое время.

Crontab в панели управления Timeweb

Если ваш аккаунт оплачен, и вас не уличили в спам-рассылке, то раздел Crontab доступен и работоспособен:

Интерфейс Crontab в панели управления Timeweb дружелюбен и интуитивно понятен: даже начинающие пользователи, до этого не имевшие опыта работы с cron, легко разберутся в том, как создавать задачи. Создав задачу, вы сможете в автоматическом режиме делать бэкапы, рассылки, чистить кэш и выполнять другие типовые действия.

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

После основной информации я расскажу о нюансах, которые важно учитывать при работе с cron.

В разделе Crontab создаются новые задачи. Для этого потребуется заполнить поля:

  • Название . Это имя нашей задачи.
  • Тип файла и путь до файла . В зависимости от того, на каком языке написан сценарий, выбираем тип файла и путь до него. Если в задаче запускается скрипт, требующий переменные веб-сервера, запуск напрямую через php-интерпретатор приводит к ошибкам. Поэтому в случае, когда Вы используете скрипт, работающий при запуске через адресную строку браузера, необходимо выбирать тип файла «HTTP-запрос» и указывать URL для запроса аналогично тому, как он указывается в адресной строке «ваш_сайт/путь/до/скрипта/script.php?параметр1=значение1&параметр2=значение2».
  • Периодичность запуска . Популярные интервалы запуска выбираем из списка. Если необходим запуск в другое время, то используем продвинутые настройки. В отличие от консоли, в панели Timeweb время указывается в обратном порядке. Но каждый блок подписан, что помогает не запутаться.

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

Нюансы

Небольшие нюансы, о которых стоит помнить при работе с cron.

1. Cron работает, если аккаунт оплачен и нет ограничений.

Проверить статус можно создав файл с расширением php (например twtest.php) с кодом:

И обратившись к файлу в браузере.

В браузере увидите информацию:

uid=12345(login) gid=600(customers) groups=600(customers) — говорит о том, что cron и почта доступны

uid=12345(login) gid=600(customers) groups=601(newcustomers),600(customers),660(spammers) — пишем в поддержку

2. Файл, который запускаете, должен иметь права на чтение и исполнение (r+x).

По умолчанию файлы на хостинге создаются с правами 600. Поменять права на нужные можно по ssh командой:

3. Дабы не захламлять e-mail лишними письмами, настройте часто исполняемые скрипты на запись лога в файл , а не в консоль.

CRON по SSH

Настройка планировщика по ssh описана столько раз, что нового рассказать не получится.

Подключение по ssh подробно описано в справочном центре Timeweb:

После подключения, прочтите статью с информацией о командах ssh:

После прочтения надо найти файл со скриптом, перемещаясь между директориями командой cd. Найдя файл введите pwd и скопируйте путь (пример «/home/c/cc123456/public_html/test/»)

Если не знаете какие права у файла введите:

При подключении по ssh редактировать задачи можно командой

В первый раз сервер попросит выбрать редактор:

Читайте также:  Gta 5 разница настроек графики

Система указывает на простой редактор nano под цифрой 2. Если не рассчитали силы или случайно выбрали vi, не пугайтесь, нажмите Esc, затем введите двоеточие q и нажмите enter.

Для того, чтобы сменить редактор, введите команду:

и выберете nano.

Задания пишутся по строкам. Пример:

Значения первых пяти значений:

  • 1 минуты — число от 0 до 59
  • 2 часы — число от 0 до 23
  • 3 день месяца — число от 1 до 31
  • 4 номер месяца в году — число от 1 до 12
  • 5 день недели — число от 0 до 7 (0-Вс,1-Пн,2-Вт,3-Ср,4-Чт,5-Пт,6-Сб,7-Вс)

Для каждого параметра возможно задать необходимое количество значений через запятую. Например, если в поле «часы» написать 8,23, то задание будет запущено в 8 часов утра и в 23 часа вечера. Можно задать интервал: 9-18 будет означать, что программа запустится каждый час в период с 9 до 18 часов включительно. Символ ‘*’ означает «все возможные значения». Например, указание ‘*’ в поле «часы» будет означать «запускать каждый час». Символ ‘/’ служит для указания дополнительной периодичности задания. Например, ‘*/3’ в поле «минуты» означает «каждые три минуты».

Далее указываем путь до интерпретатора. На серверах Timeweb по умолчанию установлена версия php 5.3. Наш предполагаемый скрипт работает на 5.6. Указать требуемую версию php так:

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

Нюансы

  1. При изменении в панели управления в разделе «Crontab» удалятся изменения записей сделанных по ssh!
  2. Если определены оба поля «день месяца» и «день недели» , то такое задание будет выполняться в каждый указанный день недели независимо от дня месяца. Например, следующая команда будет выполняться в 9 часов 19 минут каждую среду и каждое 7 число месяца, даже если 7 число не совпадает со средой.

Частные случаи

Для запуска задачи чаще, чем раз в минуту, используем sleep.

Для этого пишем в crontab:

для запуска файла каждые 30 секунд.

Иногда при использовании планировщика запуска программ cron неизвестно, сколько длится выполнение скрипта. Для избежания двойного запуска скрипта требуется проверка на завершение предыдущего запуска скрипта.

Логичным вариантом будет создание lock файла и при запуске скрипта проверять наличие файла. Но на хостинге Timeweb, как и на других хостингах, присутствует ограничение по процессору. Скрипт зависит от условий и времени выполнения, а значит, мы не можем предугадать время выполнения скрипта. Если скрипт выполнится с нарушением правил и ограничений ( https://timeweb.com/ru/services/hosting/rules/ ), то процесс завершится со стороны хостинга. Тогда lock файл не будет удален, а значит, и скрипт не будет запускаться по крону, пока файл не будет удалён.

Маэстро из отдела инженеров рассказал, как решить задачу.

Для начала создаём sh скрипт в файл /home/c/cc123456/tmp/twtest.sh:

В панели управления в разделе crontab выбираем тип «Исполняемый бинарный файл».

В поле “Полный путь” пишем:

  • /home/c/cc123456/tmp/twtest.sh — наш скрипт проверки
  • /opt/php56/bin/php — путь до нужного интерпретатора
  • /home/c/cc123456/tmp/twtest.php — путь до нашего скрипта

Указываем необходимое время запуска и придумываем название.

Заключение

Теперь вы знаете, как работать с cron и автоматически запускать задачи. Более подробную информацию о cron ищите в «man cron». Удачи!

Источник

Adblock
detector