1С Битрикс Агенты на кроне | MATRIX
Маркетинг из Америки доработан для России
CRM, Сайты, Аналитика
Меню
  • Компания
  • Бизнес-инструменты
  • Услуги
  • Проекты
  • Блог
  • Акции
  • Помощь
  • Контакты
  • 1С Битрикс Агенты на кроне

    | 67 Время чтения:
    Установка агентов на кроне для 1С Битрикс инструкция
    1. Отключаем агентов на хитах. в строке браузера набираем http://ваш сайт/bitrix/admin/php_command_line.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. После этого убираем из файла ваш сайт/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);
     
    3. Создаем файл вручную в текстовом редакторе и называем его 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);

    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'))
    {
        \Bitrix\Sender\MailingManager::checkPeriod(false);
        \Bitrix\Sender\MailingManager::checkSend();
    }

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

    4. Записываем его в /bitrix/php_interface/cron_events.php (обновлен 10.09.2015)<br>
    <br>
    5. Идем в хостинг консоль и мучаем поддержку на тему куда добавлять данный скрипт в cron<br>
    <br>
     */2 * * * * /usr/bin/php -f /home/bitrix/www/bitrix/php_interface/cron_events.php<br>
    <br>
    После этого все агенты и отправка системных событий будут обрабатывается из под cron, раз в 2 минуты. Чтобы не увеличивалась очередь отправки почтовых сообщений, советую изменить параметр отвечающий за количество почтовых событий обрабатываемых за раз. Для этого выполняем в php консоли следующую команду<br>
    <br>
    COption::SetOptionString("main", "mail_event_bulk", "20"); <br>
    echo COption::GetOptionString("main", "mail_event_bulk", "5");
    Вернуться

    Есть вопросы — спрашивайте!

    Наши специалисты помогут Вам, окажут бесплатную консультацию или запишут на приём

    Статьи