Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Цитата
Владимир Чадаев написал:
в результатах теста пишут наоборот установитьпо инструкции создается файл /bitrix/php_interface/cron_events.php, в тестах пишут что этот файл тут /www/bitrix/modules/main/tools/cron_events.phpПодскажите пожалуйста как правильно настроить?

Не важно, где находится файл, главное какой из них будет запускаться через cron. И какой код внутри файла. Я недавно переводил себе агентов на крон (у меня из 87). Мой файл www/bitrix/php_interface/cron_events.php:

$_SERVER[‘DOCUMENT_ROOT’] = realpath(dirname(__FILE__).’/. ./..’);
$DOCUMENT_ROOT = $_SERVER[‘DOCUMENT_ROOT’];

define(‘NO_KEEP_STATISTIC’, true);
define(‘NOT_CHECK_PERMISSIONS’,true);
define(‘BX_NO_ACCELERATOR_RESET’, true);

require($_SERVER[‘DOCUMENT_ROOT’].’/bitrix/modules/main/include/prolog_before.php’);

@set_time_limit(0);
@ignore_user_abort(true);

CAgent::CheckAgents();  
define(‘BX_CRONTAB’, true);  
CAgent::CheckAgents();  
require($_SERVER[‘DOCUMENT_ROOT’].’/bitrix/modules/main/tools/backup.php’);
CMain::FinalActions();

В    /bitrix/php_interface/dbconn.php    убрал  define(«BX_CRONTAB_SUPPORT», true);   и    define(«BX_CRONTAB», true);
В cron была одна запись, выполняющая cron_events.php каждые 2 мин.
Всё работало, только процесс крона зависал на сервере и приходилось применять KILL к процессам. Тогда я для каждого агента написал свой php файл (который запускает агента) и отдельную запись в cron для каждого агента. Вроде все агенты выполняются (не всех ещё проверил).

Цитата
Владимир Чадаев написал:
в результатах теста пишут наоборот установитьпо инструкции создается файл /bitrix/php_interface/cron_events.php, в тестах пишут что этот файл тут /www/bitrix/modules/main/tools/cron_events.phpПодскажите пожалуйста как правильно настроить?

Не важно, где находится файл, главное какой из них будет запускаться через cron. И какой код внутри файла. Я недавно переводил себе агентов на крон (у меня из 87). Мой файл www/bitrix/php_interface/cron_events.php:

$_SERVER[‘DOCUMENT_ROOT’] = realpath(dirname(__FILE__).’/. ./..’);
$DOCUMENT_ROOT = $_SERVER[‘DOCUMENT_ROOT’];

define(‘NO_KEEP_STATISTIC’, true);
define(‘NOT_CHECK_PERMISSIONS’,true);
define(‘BX_NO_ACCELERATOR_RESET’, true);

require($_SERVER[‘DOCUMENT_ROOT’].’/bitrix/modules/main/include/prolog_before.php’);

@set_time_limit(0);
@ignore_user_abort(true);

CAgent::CheckAgents();  
define(‘BX_CRONTAB’, true);  
CAgent::CheckAgents();  
require($_SERVER[‘DOCUMENT_ROOT’].’/bitrix/modules/main/tools/backup.php’);
CMain::FinalActions();

В    /bitrix/php_interface/dbconn.php    убрал  define(«BX_CRONTAB_SUPPORT», true);   и    define(«BX_CRONTAB», true);
В cron была одна запись, выполняющая cron_events.php каждые 2 мин.
Всё работало, только процесс крона зависал на сервере и приходилось применять KILL к процессам. Тогда я для каждого агента написал свой php файл (который запускает агента) и отдельную запись в cron для каждого агента. Вроде все агенты выполняются (не всех ещё проверил).


0

1

CentOS 7 с поднятым ngin + php-fpm + bitrix

Есть задача, перевести всех агентов bitrix на cron

В проверке системе в bitrix есть ошибка: Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад.

Информация по ней:

Чтобы перенести работу непериодических агентов (и передачу почты) на cron, необходимо в /bitrix/php_interface/dbconn.php установить константу:
define(‘BX_CRONTAB_SUPPORT’, true);

После этого на хитах будут выполняться только периодические агенты. Затем в cron поставить задание на ежеминутный запуск скрипта /var/www/bitrix/modules/main/tools/cron_events.php.
(замените /var/www на свой путь к корню сайта).

Внутри скрипта определена константа BX_CRONTAB, которая является индикатором того, что скрипт работает из cron и приводит к выполнению только непериодических агентов. Если эта константа ошибочно определена в dbconn.php, периодические агенты полностью перестают выполняться.

Сделал, как указано, но агенты так и не переводятся.
Конфиг в cron:

*/1 * * * * /usr/bin/php -f
/web/sites/bitrix.site.ru/www/bitrix/modules/main/tools/cron_events.php

crontab -l выводит пустую строчку

В Битрикс по умолчанию агенты выполняются на хитах. То есть триггером для запуска агента является посещение сайта пользователем. Из-за этого сайт может работать медленнее, чем хотелось бы. К тому же при проверке системы в админке, мы постоянно будем видеть «Замечание. Агенты выполняются на хитах, рекомендуется перевести выполнение агентов на cron».

Выполнение всех агентов на cron

Ещё может быть другая ошибка: «Ошибка! Не настроен запуск cron_events. php на cron, последний агент отработал больше суток назад»

Как в Битрикс быстро и правильно перевести выполнение всех агентов на cron.

В админке Битрикса идём в раздел Настройки / Инструменты / Командная PHP-строка. Вводим и выполняем там команду для отключения выполнение всех агентов на хитах:

COption::SetOptionString("main", "agents_use_crontab", "N");
echo COption::GetOptionString("main", "agents_use_crontab", "N");

COption::SetOptionString("main", "check_agents", "N");
echo COption::GetOptionString("main", "check_agents", "Y");

В результате выполнения команды должно получиться «NN». Выглядит это так:

Выполнение всех агентов на cron

Дальше нужно отредактировать файл /bitrix/php_interface/dbconn.php

Если там есть такие строки, одна или обе:

define("BX_CRONTAB_SUPPORT", true);
define("BX_CRONTAB", true);

удаляем их. В этот же файл добавляем:

if(!(defined("CHK_EVENT") && CHK_EVENT===true))
   define("BX_CRONTAB_SUPPORT", true);

Должно получиться примерно вот так:

Выполнение всех агентов на cron

Следующий шаг: в этой же папке /bitrix/php_interface/ создаём новый файл с именем cron_events.php. В него вставляем такой код:

<?php
$_SERVER["DOCUMENT_ROOT"] = realpath(dirname(__FILE__)."/../..");
$DOCUMENT_ROOT = $_SERVER["DOCUMENT_ROOT"];

define("NO_KEEP_STATISTIC", true);
define("NOT_CHECK_PERMISSIONS",true);
define('BX_NO_ACCELERATOR_RESET', true);
define('CHK_EVENT', true);
define('BX_WITH_ON_AFTER_EPILOG', true);


require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");

@set_time_limit(0);
@ignore_user_abort(true);

CAgent::CheckAgents();
define("BX_CRONTAB_SUPPORT", true);
define("BX_CRONTAB", true);
CEvent::CheckEvents();

if(CModule::IncludeModule('sender'))
{
    BitrixSenderMailingManager::checkPeriod(false);
    BitrixSenderMailingManager::checkSend();
}

require($_SERVER['DOCUMENT_ROOT']."/bitrix/modules/main/tools/backup.php");
?>

Ну и последнее, добавляем наш файл cron_events.php в планировщик cron с временем выполнения каждую минуту. Команда для планировщика cron должна выглядеть так:

/opt/php72/bin/php -f /var/www/user/data/www/site.ru/bitrix/php_interface/cron_events.php

Где:

  • /opt/php72/bin/php — путь к бинарнику той версии php, на которой работает сайт. Если версия php на сервере одна, и она установлена из пакетов, можно написать просто php.
  • /var/www/user/data/www/site.ru/bitrix/php_interface/cron_events.php — полный путь к созданному нами файлу cron_events.php от корня сервера.

Через пару минут идём в админку Битрикса в раздел Инструменты / Проверка системы, запускаем проверку, и видим, что «Замечание. Агенты выполняются на хитах, рекомендуется перевести выполнение агентов на cron» исчезло. Это значит, что всё хорошо, мы успешно перевели выполнение всех агентов на cron.

Выполнение всех агентов на cron

Проверить, как выполняются Агенты можно в админке Битрикс в разделе Настройки / Настройки продукта / Агенты.

Ищем там Агента с интервалом выполнения 60 секунд. Запоминаем время его последнего запуска. Через минуту обновляем страницу — время последнего запуска должно измениться.

Нужна профессиональная удалённая помощь с сервером, сайтом, компьютером или ноутбуком?

Свяжитесь со мной любым удобным для вас способом, и получите её быстро и не дорого.

Обсудить задачу

    Другие статьи по теме:
  • Массовый взлом сайтов на Битрикс 2023
  • Cron — переход по ссылке с параметрами в URL
  • Битрикс Веб-окружение и проблемы с Вебвизор Яндекс Метрики из-за заголовка X-Frame-Options
  • Как в Linux изменить текстовый редактор по умолчанию
  • Exim — мониторинг почтовой очереди для выявления исходящего спама
  • Битрикс: Веб-окружение — бэкапы на удалённый FTP сервер.

Агенты Битрикса – всевозможные фоновые задачи, необходимые для функционирования системы. Согласно официальной терминологии, агенты — технология, позволяющая запускать произвольные PHP функции (агенты) с заданной периодичностью. Технически агент — это запись в специальной таблице:

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

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

Хочу отдельно отметить слова «в конце загрузки страницы». Запомним их.

Что делают Агенты Битрикса и как работают

Агенты осуществляют отправку почты, сбор мусора, обновление системной информации, контролируют состояние сайта, обновляют метрики, проверяют наличие обновлений и т.д. Имеется возможность писать и собственные функции-агенты.

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

И вот тут вспоминаем слова «в конце загрузки страницы». Это значит, что, когда кто-то заходит на любую страницу Вашего сайта, Битрикс проверяет, есть ли агенты, которые пора исполнить. Если сайт имеет высокую посещаемость, желательно еще и равномерно распределенную по времени суток, то никаких проблем у Вас не будет.

Однако, если посещаемость сайта не слишком высока (будем реалистами, 10000 хитов в день есть далеко не у всех) – очередь агентов будет расти. И может вызвать проблемы с производительностью у первого посетителя, который попадет на такой сайт. Да, агенты быстро завершат свою работу и сайт начнет работать с достаточной отзывчивостью. Но в самом начале, в первые несколько кликов – сайт может ощутимо тормозить.

Согласно статистики, каждые 100 миллисекунд ожидания снижают конверсию на 7%. Каждые 2 секунды ожидания увеличивают вероятность того, что пользователь покинет сайт на 103%. Хотите ли вы терять потенциального клиента, который ушел из-за таких вот, чисто технических моментов? Конечно, Вы не хотите.

Как правильно настроить Агенты Битрикс

Для этого существует механизм перевода агентов на встроенный в ОС Linux планировщик – cron.

Он заставляет агенты выполняться по расписанию вне зависимости от посещаемости сайта, так как механизм запуска более не привязывается к загрузке страниц. Вместо этого он привязывается к часам на сервере и за своевременный запуск агентов отвечает операционная система.

Вместе с тем, в течение последних лет наблюдается тенденция к замещению функционала планировщика cron другим механизмом – systemd. Подсистема инициализации и управления службами, которая в 2010-2011 годах фактически вытеснила традиционную init, значительно усовершенствовав ее возможности. Новые функции systemd заменили и планировщик cron. Сейчас он есть в большинстве операционных систем семейства Linux, однако оставлен там скорее для обеспечения совместимости, чем для решения реальных задач.

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

Чтобы не терять времени на думы о высоких материях из области эволюции операционных систем, мы рассмотрим вопросы переключения агентов Битрикс на современный планировщик в лице systemd.

Настройка Агентов на cron systemd

Шаг 1. Отключим исполнение агентов по хитам

Для этого перейдем в административную часть сайта, расположенную по адресу example.ru/bitrix/admin.

Далее Настройки – Инструменты – Командная PHP строка.

Для начала отключим исполнение агентов по хитам

Впишем туда код:


COption::SetOptionString("main", "agents_use_crontab", "N");
echo COption::GetOptionString("main", "agents_use_crontab", "N");
COption::SetOptionString("main", "check_agents", "N");
echo COption::GetOptionString("main", "check_agents", "Y");

Результат выполнения команды должен отобразить надпись NN

Шаг 2. Внесем изменения в настройки ядра Битрикс

Для этого отредактируем файл /home/bitrix/ext_www/example.com/bitrix/php_interface/dbconn.php

Внимание! Если у вас не подключен мультисайт, то вероятнее всего этот файл находится в каталоге /home/bitrix/www/bitrix/php_interface/dbconn.php

Удалим или закомментируем строки с текстом (если они там есть):


define("BX_CRONTAB_SUPPORT", true);
define("BX_CRONTAB", true);

Также в конце файла добавим


if(!(defined("CHK_EVENT") && CHK_EVENT===true))
define("BX_CRONTAB_SUPPORT", true);

В этой же папке создаем (если нет) файл cron_events.php следующего содержания:


$_SERVER["DOCUMENT_ROOT"] = realpath(dirname(__FILE__) . "/../..");
$DOCUMENT_ROOT = $_SERVER["DOCUMENT_ROOT"];

define("NO_KEEP_STATISTIC", true);
define("NOT_CHECK_PERMISSIONS", true);
define('BX_NO_ACCELERATOR_RESET', true);
define('CHK_EVENT', true);
define('BX_WITH_ON_AFTER_EPILOG', true);

require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php");

@set_time_limit(0);
@ignore_user_abort(true);

CAgent::CheckAgents();
define("BX_CRONTAB_SUPPORT", true);
define("BX_CRONTAB", true);
CEvent::CheckEvents();

if (CModule::IncludeModule('sender')) {
    BitrixSenderMailingManager::checkPeriod(false);
    BitrixSenderMailingManager::checkSend();
}

require($_SERVER['DOCUMENT_ROOT'] . "/bitrix/modules/main/tools/backup.php");
CMain::FinalActions();

Шаг 3. Создадим службу и таймер для ее запуска в systemd

Переместимся в папку /etc/systemd/system и создадим в ней файл bitrix-agents.service


[Unit]
Description=Bitrix agents for example.com

[Service]
User=bitrix
Group=bitrix
ExecStart=/usr/bin/php -f /home/bitrix/ext_www/example.com/bitrix/php_interface/cron_events.php

Обратите внимание на путь в строке ExecStart. Он должен соответствовать местоположению ранее созданного нами файла cron_events.php.

Создадим второй файл таймера для службы: bitrix-agents.timer. Названия файлов должны совпадать в левой их части, разница только в окончаниях (.service и .timer).


[Unit]
Description=Bitrix agents timer for example.com

[Timer]
OnCalendar=*:0/1

[Install]
WantedBy=timers.target

Как мы знаем из шпаргалки, значение OnCalendar=*:0/1 означает выполнение один раз в минуту. Этого более чем достаточно для наших целей.

Шаг 4. Проверим правильность созданной конфигурации

Выполним команды в консоли сервера:


systemctl daemon-reload
systemd-analyze verify /etc/systemd/system/bitrix-agents.service
systemd-analyze verify /etc/systemd/system/bitrix-agents.timer

Никаких ошибок быть не должно. После этого запустим таймер (и только его!).


systemctl start bitrix-agents.timer
systemctl enable bitrix-agents.timer

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

Убедиться, что все работает можно при помощи команды


systemctl list-timers

Найдите строку:


NEXT                         LEFT                LAST                         PASSED             UNIT                         ACTIVATES
Thu 2022-01-20 23:38:00 MSK  52s left            Thu 2022-01-20 23:37:01 MSK  6s ago             bitrix-agents.timer             bitrix-agents.service

Если зайти в административную панель Битрикс и перейти в Настройки – Настройки продукта – Агенты Вы также увидите, что все агенты своевременно выполняются.

Агенты Битрикс на Cron

На этом на сегодня все.

Поддержка утверждает, что на стороне продукта все ок, в maillog.txt попадают письма все, и вероятно есть проблемы с работой cron (хотя резервные копии по крону успешно создаются, например)
Но вот msmtp.log ничем не наполняется, в нет ни ошибок подключения, ни успешных подключений. В таблице b_event они со статусом F.

Может кто-то сталкивался с подобной ситуацией?

Вообщем, битва с 3 сентября все же выиграна) Как оказалось стоило не вручную добавлять в cron команду, а в через «управление масштабированием» в админке самого сайта включить крон.

Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад.

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

А письма тогда как ходят?)) Ничего с кронтабом не делал, поддержка сказала что достаточно включить в веб-окружении крон.

# Ansible managed
# cron tasks for site kreslobum.ru
#

А письма тогда как ходят?)) Ничего с кронтабом не делал, поддержка сказала что достаточно включить в веб-окружении крон.

# Ansible managed
# cron tasks for site kreslobum.ru
#

Неужели путь неверный. не сходится согласно этой статьи. https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=2943&LESSO.

Информации о том, успешно или нет, там не будет, там будет лишь сам факт запуска.

Дальше Вы можете проверить сам запуск, в консоли:

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Цитата
Олег Дыбкин написал:
Цитата
Олег Дыбкин написал:

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Всё это уже есть по умолчанию, при установке bitrixn-env.

Но, есть вопрос. Точно ли при такой настройке выполняются на кроне именно все агенты?
В описании указано, что так выполняются только непериодические агенты.

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Цитата
После этого на хитах будут выполняться только периодические агенты.
Цитата
скрипт работает из cron и приводит к выполнению только непериодических агентов.

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Цитата
red_eye написал:
Точно ли при такой настройке выполняются на кроне именно все агенты?

UPD.
НО в списке агентов не исполняются (скрин)! Т.е. последнее время исполнения остается старым.

А то уже голова поломалась, искать в чем проблема.

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Откатывать, как оказалось не обязательно. Нужно понять что cron работает очень специфически.

Значит что в итоге:

После добавления скриптов в crontab перезапустить по инструкции выше. Мне помогло. Может кому-то другому поможет тоже.
Написанная инструкция актуальна для BitrxVM.

Источник

Добрый день, уважаемые коллеги!

Вначале немного представлюсь. Меня зовут Рыжонин Николай, в «1С-Битрикс» я курирую направление производительности продуктов компании. Если у вас есть вопросы, предложения или пожелания, касающиеся производительности, обращайтесь e-mail: rns@bitrix.ru

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

Для начала полностью отключим выполнение агентов на хите. Для этого выполним следующую команду в php консоли.

Создаем файл проверки агентов и рассылки системных сообщений /bitrix/php_interface/cron_events.php

И добавляем данный скрипт в cron

После этого все агенты и отправка системных событий будут обрабатывается из под cron, раз в 5 минут. Чтобы не увеличивалась очередь отправки почтовых сообщений, советую изменить параметр отвечающий за количество почтовых событий обрабатываемых за раз. Для этого выполняем в php консоли следующую команду

Не могу понять, что делает флаг «agents_use_crontab»

1// Если мы выполняем COption::SetOptionString(«main», «agents_use_crontab», «Y»), то на хитах остануться работать только периодические агенты (т.е. эта строка подключает крон для непериодических агентов?).

2// А если выполним COption::SetOptionString(«main», «agents_use_crontab», «N»), то что. по смыслу ведь вроде получается наоборот: мы ОТКЛЮЧАЕМ, а не включаем использование крона.

Советую, чтобы не забивать себе голову, использовать модуль Агенты на крон е.

письма приходят, если раскомментировать то SUCCESS_EXEC =F

Подскажите пожалуйста какие могут быть причины.

на выходе html-код и ошибка
Fatal error: Class ‘BitrixMailMessage’ not found in /home/bitrix/www/bitrix/modules/main/lib/mail/eventmessagethemecompiler.php(273) : eval()’d code on line 26

Не сталкивались?

Проверка на наличие неотправленных сообщений:

Ошибка! Есть ошибки при отправке системных почтовых сообщений, число неотправленных сообщений: 4598 Определена константа BX_CRONTAB_SUPPORT в /bitrix/php_interface/dbconn.php, при этом должен быть настроен вызов агентов на cron.

Помогите, сделано всё по вашей инсрукции

Елена Пилюшенко, в /etc/crontab например
только синтаксис тогда нужен такой

или создать(отредактировать) соответствующий файлик в /etc/cron.d/

Солдатов Игорь, похожу с обновлением есть изменения и этот прием с двумя «CAgent::CheckAgents();» не катит

попробуйте закоментировать первый //CAgent::CheckAgents();

1С-Битрикс: Управление сайтом 17.5.4
Серв на centos, веб-окружение битрикс.
Все завелось без проблем.
Спасибо автору!

Силуянов Александр,
Сначала сделал файл как написано в секции «Создаем файл проверки агентов и рассылки системных сообщений /bitrix/php_interface/cron_events.php (обновлен 10.09.2015)»

Как добавить в крон?
nano /etc/crontab
И вперед.

Царев Дмитрий, странно. На свежей виртуалке от битрикса нет файла crontab.
Он так и пишет: no crontab for foot

Царев Дмитрий, установил модуль «Агенты на кроне» из маркетплейса.
В его настройках, внизу написано:
Настройка cron

cron — это программа на сервере, которая запускается раз в минуту и выполняет ваши команды в указанное время.

Для работы агентов на кроне необходимо настроить, чтобы стандартный файл Битрикса /bitrix/modules/main/tools/cron_events.php вызывался, например, раз в минуту.

В Виртуальной машине Битрикса ничего не надо делать, там уже есть соответствующая настройка для каждого сайта (файл /etc/crontab). На специализированных хостингах под Битрикс тоже могут быть заранее сделаны настройки.

У вас Виртуальная машина Битрикса версии 7.2.2.

Вместо /usr/bin/php, у вас может быть другой путь. Узнайте у техподдержки вашего хостинга, как правильно настраивать крон, или найдите в часто задаваемых вопросах на сайте хостинга.

Важно. Настройка крона на вашем сервере — это обязанность администратора сервера или техподдержки хостинга. В обязанности разработчика модуля не входит.

_____________________

Может там и не надо ни чего настраивать. Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад
Как вообще проверить отрабатывает ли агент на кроне?

Источник

Переключение агентов на cron

Цитата
Результат теста: Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад.

Чтобы перенести работу непериодических агентов (и передачу почты) на cron, необходимо в /bitrix/php_interface/dbconn.php установить константу:
define(‘BX_CRONTAB_SUPPORT’, true);

После этого на хитах будут выполняться только периодические агенты. Затем в cron поставить задание на ежеминутный запуск скрипта /var/www/bitrix/modules/main/tools/cron_events.php.
(замените /var/www на свой путь к корню сайта).

Цитата
Убираем из файла /bitrix/php_interface/dbconn.php определение следующих констант:

define(«BX_CRONTAB_SUPPORT», true);
define(«BX_CRONTAB», true);

if(!(defined(«CHK_EVENT») && CHK_EVENT===true)) define(«BX_CRONTAB_SUPPORT», true);

в результатах теста пишут наоборот установить

по инструкции создается файл /bitrix/php_interface/cron_events.php, в тестах пишут что этот файл тут /www/bitrix/modules/main/tools/cron_events.php

Подскажите пожалуйста как правильно настроить?

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Цитата
Владимир Чадаев написал:
Результат теста: Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад.Чтобы перенести работу непериодических агентов (и передачу почты) на cron, необходимо в /bitrix/php_interface/dbconn.php установить константу:define(‘BX_CRONTAB_SUPPORT’, true);После этого на хитах будут выполняться только периодические агенты. Затем в cron поставить задание на ежеминутный запуск скрипта /var/www/bitrix/modules/main/tools/cron_events.php.(замените /var/www на свой путь к корню сайта).

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Цитата
Владимир Чадаев написал:
в результатах теста пишут наоборот установитьпо инструкции создается файл /bitrix/php_interface/cron_events.php, в тестах пишут что этот файл тут /www/bitrix/modules/main/tools/cron_events.phpПодскажите пожалуйста как правильно настроить?

Не важно, где находится файл, главное какой из них будет запускаться через cron. И какой код внутри файла. Я недавно переводил себе агентов на крон (у меня из 87). Мой файл www/bitrix/php_interface/cron_events.php:

define(‘NO_KEEP_STATISTIC’, true);
define(‘NOT_CHECK_PERMISSIONS’,true);
define(‘BX_NO_ACCELERATOR_RESET’, true);

Источник

Переключение агентов на cron

Цитата
Результат теста: Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад.

Чтобы перенести работу непериодических агентов (и передачу почты) на cron, необходимо в /bitrix/php_interface/dbconn.php установить константу:
define(‘BX_CRONTAB_SUPPORT’, true);

После этого на хитах будут выполняться только периодические агенты. Затем в cron поставить задание на ежеминутный запуск скрипта /var/www/bitrix/modules/main/tools/cron_events.php.
(замените /var/www на свой путь к корню сайта).

Цитата
Убираем из файла /bitrix/php_interface/dbconn.php определение следующих констант:

define(«BX_CRONTAB_SUPPORT», true);
define(«BX_CRONTAB», true);

if(!(defined(«CHK_EVENT») && CHK_EVENT===true)) define(«BX_CRONTAB_SUPPORT», true);

в результатах теста пишут наоборот установить

по инструкции создается файл /bitrix/php_interface/cron_events.php, в тестах пишут что этот файл тут /www/bitrix/modules/main/tools/cron_events.php

Подскажите пожалуйста как правильно настроить?

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Цитата
Владимир Чадаев написал:
Результат теста: Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад.Чтобы перенести работу непериодических агентов (и передачу почты) на cron, необходимо в /bitrix/php_interface/dbconn.php установить константу:define(‘BX_CRONTAB_SUPPORT’, true);После этого на хитах будут выполняться только периодические агенты. Затем в cron поставить задание на ежеминутный запуск скрипта /var/www/bitrix/modules/main/tools/cron_events.php.(замените /var/www на свой путь к корню сайта).

Ошибка не настроен запуск cron events php на cron последний агент отработал больше суток назад

Цитата
Владимир Чадаев написал:
в результатах теста пишут наоборот установитьпо инструкции создается файл /bitrix/php_interface/cron_events.php, в тестах пишут что этот файл тут /www/bitrix/modules/main/tools/cron_events.phpПодскажите пожалуйста как правильно настроить?

Не важно, где находится файл, главное какой из них будет запускаться через cron. И какой код внутри файла. Я недавно переводил себе агентов на крон (у меня из 87). Мой файл www/bitrix/php_interface/cron_events.php:

define(‘NO_KEEP_STATISTIC’, true);
define(‘NOT_CHECK_PERMISSIONS’,true);
define(‘BX_NO_ACCELERATOR_RESET’, true);

Источник

Устранение ошибок CMS Битрикс

Опция «Проверка системы» в CMS Битрикс позволяет проверить соответствие настроек хостинга требованиям CMS и вашего сайта. При запуске этой опции на хостинге Timeweb, Битрикс, как правило, приводит несколько ошибок и замечаний. В этой статье мы рассмотрим, как их исправить.

Отправка почты

Речь идет о двух параметрах: «Отправка почты» и «Отправка почтового сообщения больше 64Кб».

Уведомление: Ошибка! Не работает

Эта ошибка возникает, если вы используете хостинг на тестовом периоде — до оплаты услуги почта недоступна. Как только хостинг будет оплачен, почта заработает.

Режим работы MySQL

Уведомление: Ошибка! innodb_strict_mode=ON, требуется OFF. Переменная sql_mode в MySQL должна быть пустая, текущее значение: NO_ENGINE_SUBSTITUTION

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

Решение:

Необходимо внести изменения в файлы конфигурации Bitrix, в которых задаются параметры базы данных, и указать в них нужные значения. Отредактировать файлы можно, например, с помощью Файлового менеджера.

После этого проверка Bitrix пройдет успешно.

Размер стека и pcre.recursion_limit

Уведомление: Замечание: Возможны проблемы в работе с длинными строками из за системных ограничений

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

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

Решение:

Выполнение агентов на cron

Уведомление: Замечание: Агенты выполняются на хитах, рекомендуется перенести их выполнение на cron

Это замечание некритично. В Битрикс предусмотрен внутренний планировщик задач (агентов). Данное замечание влияет на то, насколько точно по времени сработают запланированные задачи. Грубо говоря, скрипты сайта выполняются, только когда его страницы кто-то посещает. Если нет посещений, то и таймер работать не будет. Cron позволяет полностью решить проблему с планированием задач.

Решение:

Для этого добавьте в файл /public_html/bitrix/php_interface/dbconn.php строку:

1. В разделе Crontab нажмите «Добавить новую задачу» и задайте удобное имя для задачи.

2. В пункте «Исполнитель» выберите «Исполняемый бинарный файл».

3. В пункте «Путь до файла» укажите команду следующего вида:

4. В пункте «Периодичность» выберите «Каждую минуту».

Уведомление: Ошибка! Не настроен запуск cron_events.php на cron

Эта ошибка может возникнуть, если в пункте выше вы только добавили константу, но не добавили задачу cron. Без настройки задачи в crontab будет остановлена часть агентов, в том числе с сайта перестанет отправляться почта. Письма будут накапливаться в очередь и отправляться по частям после устранения ошибки.

Решение:

Выполните приведенную выше инструкцию по добавлению задачи cron, и ошибка будет устранена.

Обязательные параметры PHP

Уведомление: Ошибка! Значение max_input_vars должно быть не ниже 10000

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

Решение:

Необходимо добавить следующую строку в файл /public_html/.htaccess :

Источник

  • Ошибка не найдено ни одного поддерживаемого планшета wacom
  • Ошибка не найдено установленной 1с предприятия 8
  • Ошибка не найдено источников торрента
  • Ошибка не найдено соответствующих лицензий для приложения
  • Ошибка не найдена цель yay