Опция «Проверка системы» в CMS Битрикс позволяет проверить соответствие настроек сервера требованиям CMS и вашего сайта. При запуске этой опции Битрикс, как правило, приводит несколько ошибок и замечаний. В этой статье мы рассмотрим, как их исправить.
Уведомление:
Ошибка! innodb_strict_mode=ON, требуется OFF. Переменная sql_mode в MySQL должна быть пустая, текущее значение: NO_ENGINE_SUBSTITUTION
Эта ошибка критична. Она может привести к блокировке запросов к базе данных, что практически означает остановку работы сайта.
Решение:
Необходимо внести изменения в файлы конфигурации Bitrix, в которых задаются параметры базы данных, и указать в них нужные значения. Отредактировать файлы можно, например, с помощью подключения по FTP/SFTP.
В файл /директория_сайта/bitrix/php_interface/after_connect.php
под уже имеющимися строками и до символов ?>
добавьте:
$DB->Query("SET sql_mode=''");
$DB->Query("SET innodb_strict_mode=0");
В файл /директория_сайта/bitrix/php_interface/after_connect_d7.php
под уже имеющимися строками и до символов ?>
добавьте:
$connection->queryExecute('SET sql_mode=""');
$connection->queryExecute("SET innodb_strict_mode=0");
После этого проверка Bitrix пройдет успешно.
Уведомление:
Замечание: Агенты выполняются на хитах, рекомендуется перенести их выполнение на cron
Это замечание некритично. В Битрикс предусмотрен внутренний планировщик задач (агентов). Данное замечание влияет на то, насколько точно по времени сработают запланированные задачи. Грубо говоря, скрипты сайта выполняются, только когда его страницы кто-то посещает. Если нет посещений, то и таймер работать не будет. Cron позволяет полностью решить проблему с планированием задач.
Решение:
Чтобы перенести работу непериодических агентов (и передачу почты) на Сron, необходимо установить константу BX_CRONTAB_SUPPORT.
Для этого добавьте в файл /директория_сайта/bitrix/php_interface/dbconn.php
строку:
define('BX_CRONTAB_SUPPORT', true);
Затем нужно добавить задачу в Crontab. Это можно сделать инструментами вашей панели управления или с помощью cli.
Уведомление:
Ошибка! Не настроен запуск cron_events.php на cron
Эта ошибка может возникнуть, если в пункте выше вы только добавили константу, но не добавили задачу cron. Без настройки задачи в crontab будет остановлена часть агентов, в том числе с сайта перестанет отправляться почта. Письма будут накапливаться в очередь и отправляться по частям после устранения ошибки.
Решение:
Выполните приведенную выше инструкцию по добавлению задачи cron, и ошибка будет устранена.
Уведомление:
Ошибка! Значение max_input_vars должно быть не ниже 10000
Эта ошибка не влияет на работоспособность сайта напрямую, но может отразиться на работе с большими формами в административной панели. При работе с инфоблоками низкое значение параметра max_input_vars может вызвать проблемы с сохранением настроек, поэтому система выделяет эту ошибку как критическую.
Решение:
Необходимо добавить следующую строку в файл /директория_сайта/.htaccess
:
php_value max_input_vars 11000