Битрикс включить показ ошибок

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

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

Рабочий стол->Контент->Структура сайта->Файлы и папки->bitrix

Здесь представлен многомерный массив данных, ключ-значение. Это основные настройки вашего сайта на битриксе.

Что бы включить отображение ошибок находим строку ‘debug’  которая находится внутри ‘exception_handling’->’value’ и ставим ей значение true вместо false.

Что бы настроить какие именно ошибки мы хотим отображать в ключе ‘exception_errors_types’  указываем код ошибок, например 29687, но он мало понятен, поэтому лучше использовать в значение данного ключа константы через пробел:

‘handled_errors_types’ => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_DEPRECATED, 

Здесь мы  перечислили все ошибки, предупредения и тд. Если нужно вывести только ошибки, то остальные константы можно просто убрать, поскольку уведомление 

Загрузка

Если на экране появилась ошибка:

При выполнении скрипта возникла ошибка. Включить расширенный вывод ошибок можно в файле настроек .settings.php

Открываем файл .settings.php находим debug и заменяем false на true:

'exception_handling' =>
array (
'value' =>
array (
'debug' => false, // изменяем значение на true
'handled_errors_types' => 20853,
'exception_errors_types' => 20853,
'ignore_silence' => false,
'assertion_throws_exception' => true,
'assertion_error_type' => 256,
'log' =>
array (
'settings' =>
array (
'file' => NULL,
'log_size' => NULL,
),
),
),
'readonly' => false,
),

В результате чего на экране будет подробное описание ошибки:

[Error]
Class 'Assets' not found (0)
D:worklocalhost11wwwlocaltemplatesvoguis_indexheader.php:17
#0: include_once
D:worklocalhost11wwwbitrixmodulesmainincludeprolog_after.php:96
#1: require(string)
D:worklocalhost11wwwbitrixmodulesmainincludeprolog.php:11
#2: require_once(string)
D:worklocalhost11wwwbitrixheader.php:1
#3: require(string)
D:worklocalhost11wwwindex.php:2

Блог «Дивасофт»

23 января 2017, Михаил

В файле bitrix/.settings.php


<?php 
'exception_handling' => 
  array (
    'value' => 
    array (
      'debug' => true,
      'handled_errors_types' => E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE & ~E_DEPRECATED,
      'exception_errors_types' => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_USER_WARNING & ~E_USER_NOTICE & ~E_COMPILE_WARNING,
      'ignore_silence' => false,
      'assertion_throws_exception' => true,
      'assertion_error_type' => 256,
      'log' => 
      array (
        'settings' => 
        array (
          'file' => 'bitrix/err.log',
          'log_size' => 1000000,
        ),
      ),
    ),
    'readonly' => false,
  )
?>

Логи будут в файле bitrix/err.log

1. Создаю в корне сайта файл error.php со следующим содержимым:

<?php
echo show_me_error;
?>

2. Открываю в браузере site.ru/error.php — белый экран

3. Смотрю bitrix/php_interface/dbconn.php:
$DBDebug = true;

4. Смотрю bitrix/php_interface/.settings.php:

...
  array (
    'value' => 
    array (
      'debug' => true,
      'handled_errors_types' => E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE & ~E_DEPRECATED,
      'exception_errors_types' => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_USER_WARNING & ~E_USER_NOTICE & ~E_COMPILE_WARNING,
      'ignore_silence' => true,
      'assertion_throws_exception' => false,
      'assertion_error_type' => 256,
      'log' => array (
        'settings' => array (
        'file' => 'bitrix/modules/error.log',
        'log_size' => 1000000,
        ),
      ),  
    ),
    'readonly' => false,
  ),
...

5. Смотрю bitrix/modules/error.log — кучу левых Warning, однако моей ошибки в моём error.php нет
6. Иду в .htaccess:

php_value display_errors 1
php_value error_reporting 7

7. Иду на сервере в /var/log/nginx/error.log — то же самое, ничего о моей ошибке

Как мне на экране при открытии error.php увидеть мою ошибку?

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

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

Рабочий стол->Контент->Структура сайта->Файлы и папки->bitrix

Здесь представлен многомерный массив данных, ключ-значение. Это основные настройки вашего сайта на битриксе.

Что бы включить отображение ошибок находим строку ‘debug’  которая находится внутри ‘exception_handling’->’value’ и ставим ей значение true вместо false.

Что бы настроить какие именно ошибки мы хотим отображать в ключе ‘exception_errors_types’  указываем код ошибок, например 29687, но он мало понятен, поэтому лучше использовать в значение данного ключа константы через пробел:

‘handled_errors_types’ => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_DEPRECATED, 

Здесь мы  перечислили все ошибки, предупредения и тд. Если нужно вывести только ошибки, то остальные константы можно просто убрать, поскольку уведомление 

Загрузка

Блог «Дивасофт»

23 января 2017, Михаил

В файле bitrix/.settings.php


<?php 
'exception_handling' => 
  array (
    'value' => 
    array (
      'debug' => true,
      'handled_errors_types' => E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE & ~E_DEPRECATED,
      'exception_errors_types' => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_USER_WARNING & ~E_USER_NOTICE & ~E_COMPILE_WARNING,
      'ignore_silence' => false,
      'assertion_throws_exception' => true,
      'assertion_error_type' => 256,
      'log' => 
      array (
        'settings' => 
        array (
          'file' => 'bitrix/err.log',
          'log_size' => 1000000,
        ),
      ),
    ),
    'readonly' => false,
  )
?>

Логи будут в файле bitrix/err.log

1. Создаю в корне сайта файл error.php со следующим содержимым:

<?php
echo show_me_error;
?>

2. Открываю в браузере site.ru/error.php — белый экран

3. Смотрю bitrix/php_interface/dbconn.php:
$DBDebug = true;

4. Смотрю bitrix/php_interface/.settings.php:

...
  array (
    'value' => 
    array (
      'debug' => true,
      'handled_errors_types' => E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE & ~E_DEPRECATED,
      'exception_errors_types' => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_USER_WARNING & ~E_USER_NOTICE & ~E_COMPILE_WARNING,
      'ignore_silence' => true,
      'assertion_throws_exception' => false,
      'assertion_error_type' => 256,
      'log' => array (
        'settings' => array (
        'file' => 'bitrix/modules/error.log',
        'log_size' => 1000000,
        ),
      ),  
    ),
    'readonly' => false,
  ),
...

5. Смотрю bitrix/modules/error.log — кучу левых Warning, однако моей ошибки в моём error.php нет
6. Иду в .htaccess:

php_value display_errors 1
php_value error_reporting 7

7. Иду на сервере в /var/log/nginx/error.log — то же самое, ничего о моей ошибке

Как мне на экране при открытии error.php увидеть мою ошибку?

Настройки

Список настроек

  • Позволять ли пользователям регистрироваться самостоятельно?
  • При регистрации добавлять в группу
  • Разрешить запоминание авторизации
  • Использовать защищенное хранение авторизации в cookies
  • E-Mail адрес или список адресов через запятую на который будут дублироваться все исходящие сообщения
  • Отправлять в письме идентификаторы почтового события и шаблона
  • Дублировать E-Mail адрес в заголовок
  • E-Mail администратора сайта (отправитель по умолчанию)
  • Конвертировать символы новой строки Unix формата в Windows формат при отправке email
  • Конвертировать 8-битные символы в заголовке письма
  • Название сайта
  • URL сайта (без http://). Например: www.mysite.com
  • Имя сервера, содержащего обновления
  • Имя префикса для названия cookies
  • Папка по умолчанию для загрузки файлов
  • Посылать в заголовке статус 200 на 404 ошибку
  • Тип меню для нулевого уровня карты сайта
  • Тип меню для остальных уровней карты сайта
  • Режим вывода ошибок (error_reporting)
  • Распространять авторизацию на все домены
  • Сохранять исходные имена загружаемых файлов
  • Автоматически заменять невалидные символы в именах загружаемых файлов
  • Закрытие публичной части

Детальное описание настроек

Заголовок: Позволять ли пользователям регистрироваться самостоятельно?
Идентификатор: new_user_registration
Описание: Если данный параметр установлен (равен «Y»), то в стандартных компонентах

/main/auth/authorize.php,

/main/auth/authorize_registration.php

будет доступна ссылка «Регистрация».

По умолчанию: Y
Заголовок: При регистрации добавлять в группу.
Идентификатор: new_user_registration_def_group
Описание: В данном параметре можно указать группы к которым будет автоматически приписываться новый пользователь при его регистрации (при вызове функций CUser::Register, CUser::SimpleRegister).
По умолчанию: 2 (группа Everyone)
Заголовок: Разрешить запоминание авторизации.
Идентификатор: store_password
Описание: Если данный параметр установлен (равен «Y»), то авторизация пользователя будет сохраняться в его cookie файлах, при установке флага «Запомнить меня на этом компьютере» в момент авторизации. Данный параметр также используется в стандартных компонентах

/main/auth/authorize.php,

/main/auth/auth_form.php,

/main/auth/authorize_registration.php

для показа/скрытия флага «Запомнить меня на этом компьютере».

По умолчанию: Y
Заголовок: Использовать защищенное хранение авторизации в cookies
Идентификатор: use_secure_password_cookies
Описание: Если параметр «Разрешить запоминание авторизации» установлен (равен «Y»), то данный параметр будет управлять типом cookie переменной в которой будет храниться информация необходимая для авторизации. Если значение данного параметра равно «Y», то cookie авторизации будут устанавливаться с флагом secure, это означает что пользователь сможет автоматически авторизовываться на сайте только если он заходит на него по защищенному протоколу HTTPS.
По умолчанию: N
Заголовок: E-Mail адрес или список адресов через запятую на который будут дублироваться все исходящие сообщения.
Идентификатор: all_bcc
Описание: E-Mail адрес или список адресов через запятую на который будут дублироваться все исходящие сообщения.
По умолчанию:
Заголовок: Отправлять в письме идентификаторы почтового события и шаблона.
Идентификатор: send_mid
Описание: Если данный параметр установлен (равен «Y»), то к телу письма снизу будет добавлено:

MID: EVENT_ID.TEMPLATE_ID (DATE_EVENT)

Где:

  • EVENT_ID — ID почтового события
  • TEMPLATE_ID — ID почтового шаблона
  • DATE_EVENT — дата создания почтового события
По умолчанию: N
Заголовок: Дублировать E-Mail адрес в заголовок.
Идентификатор: fill_to_mail
Описание: Если данный параметр установлен (равен «Y»), то заголовок письма будет дополнительно продублировано поле «To».
По умолчанию: N
Заголовок: E-Mail администратора сайта (отправитель по умолчанию)
Идентификатор: email_from
Описание: В данном параметре как правило хранят EMail администратора сайта. Этот EMail будет доступен при редактировании почтовых шаблонов в поле #DEFAULT_EMAIL_FROM#.
По умолчанию: «admin@».$_SERVER[«SERVER_NAME»]
Заголовок: Конвертировать символы новой строки Unix формата в Windows формат при отправке email
Идентификатор: CONVERT_UNIX_NEWLINE_2_WINDOWS
Описание: Если значение данного параметра «Y», то в теле сообщения все символы «новая строка» (n) будут заменены парой символов «перевод каретки»+»новая строка» (rn).

Зачастую это необходимо в ситуации, когда сайт был собран изначально на Unix хостинге (где во всех почтовых шаблонах в теле сообщения новая строка обозначалась символом n), а затем перенесен на Windows хостинг (где новая строка обозначается уже парой символов rn). А так как в соответствии со стандартом RFC 2822 (стандарт формирования почтовых сообщений) в теле сообщения недопустимо использование по отдельности символов n (или r), то при разборе сообщения почтовым сервером могут быть ошибки.

Зачастую символ «новая строка» обозначают как LF (line feed), а символ «перевод каретки» обозначают как CR (carriage return).

По умолчанию: N (не конвертировать)
Заголовок: Конвертировать 8-битные символы в заголовке письма.
Идентификатор: convert_mail_header
Описание: В соответствии с стандартом RFC 2822 в заголовке письма (в полях «To», «From», «Subject», «CC», «BCC» и т.п.) допустимо использование только символов с кодами от 33 (100001) до 126 (1111110) (это латинские символы, цифры, знаки препинания), данные символы называют 7-битными. Символы, коды которых лежат выше данного диапазона (начиная с кода 128), называют 8-ми и более битными символами, их использование в заголовках писем по стандарту RFC 2822 недопустимо и многие почтовые сервера не поддерживают 8-битные символы в заголовках писем в соответствии с этим стандартом.

Поэтому, если вы например, используете кириллические символы (русские) в заголовке своих писем, то вам необходимо установить данный параметр в значение «Y», что позволит сконвертировать 8-битные символы в формат «MIME base64», используемый для передачи бинарных данных в системах не поддерживающих 8-битные символы.

По умолчанию: Y (конвертировать)
Заголовок: Название сайта.
Идентификатор: site_name
Описание: В данном параметре можно задать значение по умолчанию для названия сайта (поле «Название сайта» в настройках сайта). Использует как правило в почтовых шаблонах в поле #SITE_NAME#.
По умолчанию: равен значению стандартной PHP переменной $_SERVER[«SITE_NAME»]
Заголовок: URL сайта (без http://). Например: www.mysite.com
Идентификатор: server_name
Описание: В данном параметре можно задать значение по умолчанию для адреса сайта (поле «URL сервера» в настройках сайта). Использует как правило в почтовых шаблонах в поле #SERVER_NAME#.
По умолчанию: равен значению стандартной PHP переменной $_SERVER[«SERVER_NAME»]
Заголовок: Имя сервера, содержащего обновления.
Идентификатор: update_site
Описание: URL сервера содержащего обновления.
По умолчанию: www.bitrixsoft.ru
Заголовок: Имя префикса для названия cookies
Идентификатор: cookie_name
Описание: Префикс имен cookie переменных устанавливаемых данным порталом.
По умолчанию: BITRIX_SM
Заголовок: Папка по умолчанию для загрузки файлов.
Идентификатор: upload_dir
Описание: Любой подкаталог каталога DocumentRoot в котором будут храниться все файлы загружаемые на сервер и сохраняемые функцией CFile::SaveFile. Данный параметр широко используется в функциях класса CFile. Под термином «загруженные файлы» понимаются как правило все файлы загружаемые через HTML формы, за исключением файлов которые могут быть загружены в любой каталог через меню «Структура сайта» -> «Управление» -> «Загрузить файл».
По умолчанию: upload
Заголовок: Посылать в заголовке статус 200 на 404 ошибку.
Идентификатор: header_200
Описание: Если данный параметр установлен (равен «Y»), то при возникновении 404 ошибки на сервере (страница не найдена) будет отсылаться статус 200 (страница найдена). Как правило данный параметр устанавливают для индексирующих роботов поисковых систем при создании каких либо сервисов на сайте на базе 404 ошибки. Например, для создания «красивых адресов» без параметров (например, /news/345.php), это также называют ЧПУ (человеко-понятные URL’ы).
По умолчанию: Y
Заголовок: Тип меню для нулевого уровня карты сайта.
Идентификатор: map_top_menu_type
Описание: Данный параметр используется стандартным компонентом /main/map/default.php выводящим карту сайта. В нем хранится тип меню с которого будет построен начальный уровень карты сайта.
По умолчанию: top
Заголовок: Тип меню для остальных уровней карты сайта.
Идентификатор: map_left_menu_type
Описание: Данный параметр используется стандартным компонентом /main/map/default.php выводящим карту сайта. В нем хранится тип меню с которого будет построены последующие уровни карты сайта (после начального уровня).
По умолчанию: left
Заголовок: Режим вывода ошибок (error_reporting)
Идентификатор: error_reporting
Описание: Данный параметр используется в служебной части пролога для установки уровня сообщений об ошибках (error) и предупреждениях (warning) PHP.
По умолчанию: Только ошибки (E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR|E_PARSE)
Заголовок: Распространять авторизацию на все домены.
Идентификатор: auth_multisite
Описание: Если данный параметр установлен (равен «Y»), то авторизация пользователя (хранимая в cookie или текущая сессионная) будет распространяться на все домены всех сайтов портала.
По умолчанию: N
Заголовок: Сохранять исходные имена загружаемых файлов.
Идентификатор: save_original_file_name
Описание: Если данный параметр установлен (равен «Y»), то все имена всех загружаемых файлов будут сохранены в исходном виде. В противном случае, эти имена будут преобразованы в уникальные с помощью хэш функции MD5.
По умолчанию: N
Заголовок: Автоматически заменять невалидные символы в именах загружаемых файлов.
Идентификатор: convert_original_file_name
Описание: Если данный параметр установлен (равен «Y»), то в именах загружаемых файлов все невалидные символы не являющиеся символами латинского алфавита, цифрами, тире (-), подчеркиванием (_), точкой (.) будут преобразованы в произвольные валидные символы.
По умолчанию: Y
Заголовок: Закрытие публичной части
Идентификатор: site_stopped
Описание: Позволяет закрыть публичную часть сайта. Возможные значения: «Y» (публичная часть закрыта) и «N» (публичная часть открыта).
По умолчанию: N

© «Битрикс», 2001-2023, «1С-Битрикс», 2023

Наверх

На чтение 4 мин. Просмотров 1.2k. Опубликовано 15.12.2019

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

Это уведомление, я назову это именно так — уведомление, т.к. мы еще не знаем в чем же дело, битрикс нас просто информирует о том, что при выполнении скрипта возникла ошибка, не более того.

Итак рассмотрим по порядку:

Содержание

  1. Почему может появиться это уведомление?
  2. Что делать, если появляется сообщение «при выполнении скрипта возникла ошибка»?
  3. Как в битрикс включить вывод ошибок?
  4. Методы выявление ошибки
  5. Основные причины появления белого экрана

Почему может появиться это уведомление?

  • Если уведомление появляется при разработке в публичной части сайта, то это однозначно ошибка в скрипте, вызвана, к примеру, ошибкой в синтаксисе в файле шаблона или в init.php, использованием функции, которая отсутствует и т.п.
  • Если уведомление появляется в админке сайта, то это может быть вызвано ошибками, к примеру, в init.php или ошибками в ядре битрикса, которые обусловлены не той версией php. Это могло произойти, если битрикс у вас давно не обновлялся и при этом вы изменили версию php на, к примеру, php 7.1.

Теперь рассмотрим пути решения этой проблемы.

Что делать, если появляется сообщение «при выполнении скрипта возникла ошибка»?

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

Как в битрикс включить вывод ошибок?

Для старого ядра включить вывод ошибок можно в файле dbconn.php:

Чтобы в битрикс включить вывод ошибок для нового ядра D7 необходимо в файле .settings.php поставить значение debug => true:

Сейчас, наверное, уже сложно встретить сайты только на старом ядре, поэтому включать вывод ошибок в битрикс можно только в файле .settings.php

После устранения всех ошибок не забываем отключать вывод ошибок, пользователю не нужно их видеть, если вдруг что-нибудь еще всплывет. Всем удачи и успехов в работе!

Порой на сайте разработанном на 1с Битрикс вместо контента появляется белый экран. Были случаи появления чистого экрана после авторизации в админке.

Методы выявление ошибки

1. В файле .htaccess включаем вывод ошибок:

2. В файле /bitrix/php_interface/dbconn.php :

3. Смотреть лог ошибок (error log) веб-сервера (апач, файл error_log ).

4. В файле /bitrix/.settings.php установить

5. Проверить содержимое переменной $_SERVER[«DOCUMENT_ROOT»] . Там должен быть установлен корректный путь, иначе не подключаются файлы системы.

6. Запустить скрипт проверки системы на соответствия требованиям для стабильной работы 1с Битрикс bitrix_server_test.php

Основные причины появления белого экрана

  1. Кривое редактирование /bitrix/php_interface/init.php : ошибки, лишний пробел после ?>
  2. Такая же проблема с белым экраном возникла после переноса на другой сервер.
  3. Проверить настройку PHP — short_open_tag , которая должна быть в On.
  4. Не хватает оперативной памяти( memory_limit по умолчанию 128). Проблема решается следующим образом. Заходим в /bitrix/php_interface/dbconn.php . Редактируем ini_set(«memory_limit», «512M»);

Если вы сталкивались с этой проблемой пишите в комментариях, как её решили.

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

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

Рабочий стол->Контент->Структура сайта->Файлы и папки->bitrix

Здесь представлен многомерный массив данных, ключ-значение. Это основные настройки вашего сайта на битриксе.

Что бы включить отображение ошибок находим строку ‘debug’ которая находится внутри ‘exception_handling’->’value’ и ставим ей значение true вместо false.

Что бы настроить какие именно ошибки мы хотим отображать в ключе ‘exception_errors_types’ указываем код ошибок, например 29687, но он мало понятен, поэтому лучше использовать в значение данного ключа константы через пробел:

E_DEPRECATED,

Здесь мы перечислили все ошибки, предупредения и тд. Если нужно вывести только ошибки, то остальные константы можно просто убрать, поскольку уведомление

Если на экране появилась ошибка:

При выполнении скрипта возникла ошибка. Включить расширенный вывод ошибок можно в файле настроек .settings.php

Открываем файл .settings.php находим debug и заменяем false на true:

'exception_handling' =>
array (
'value' =>
array (
'debug' => false, // изменяем значение на true
'handled_errors_types' => 20853,
'exception_errors_types' => 20853,
'ignore_silence' => false,
'assertion_throws_exception' => true,
'assertion_error_type' => 256,
'log' =>
array (
'settings' =>
array (
'file' => NULL,
'log_size' => NULL,
),
),
),
'readonly' => false,
),

В результате чего на экране будет подробное описание ошибки:

[Error]
Class 'Assets' not found (0)
D:worklocalhost11wwwlocaltemplatesvoguis_indexheader.php:17
#0: include_once
D:worklocalhost11wwwbitrixmodulesmainincludeprolog_after.php:96
#1: require(string)
D:worklocalhost11wwwbitrixmodulesmainincludeprolog.php:11
#2: require_once(string)
D:worklocalhost11wwwbitrixheader.php:1
#3: require(string)
D:worklocalhost11wwwindex.php:2

В этой статье мы расскажем, из-за чего возникает ошибка «DB query error, please try later» в Bitrix и как её исправить на виртуальном хостинге.

Почему возникает ошибка

Ошибка DB query error, please try later возникает на CMS Битрикс.

Также встречаются варианты:

  • Mysql connect error [localhost]: (2002) No such file or directory (400),
  • DB query error,
  • Got error 28 from storage engine.

Эта проблема связана с базой данных сайта: к ней поступает слишком много обращений — больше, чем сервер БД может обработать.

Вот несколько распространённых причин этой ошибки:

  • не хватает дискового пространства на хостинге. В Битрикс встроено автоматическое резервное копирование. Эта опция создаёт резервные копии в папке /bitrix/backup/ и постепенно занимает место на диске. Чтобы решить проблему, необходимо удалить старые резервные копии;
  • повреждена база данных MySQL. В этом случае нужна резервная копия БД: восстановите копию с датой, когда сайт работал корректно;
  • неверные данные для подключения к БД. Настройки подключения к базе данных хранятся в файле /bitrix/php_interface/dbconn.php. Если указаны неверные логин, пароль или название базы данных, сайт не может к ней подключиться. Из-за этого возникает ошибка.

Как включить отображение ошибок через панель управления

Чтобы понять, чем именно вызвана ошибка, нужно посмотреть её полное описание на сайте. Для этого включите debug-режим.

Debug-режим (режим отладки) — режим, который используют разработчики для проверки кода. Он позволяет увидеть полный текст ошибки и исправить её.

Для этого:

  1. 1.
  2. 2.

    Перейдите в раздел Менеджер файлов:

  3. 3.

    Перейдите в папку php_interface и дважды кликните по файлу dbconn.php:

  4. 4.

    В блоках $DBDebug и $DBDebugToFile замените параметр «false» на «true» и нажмите Ok:

  5. 5.

    При переходе на сайт вы увидите текст ошибки. Он выделен красным цветом:

Как включить отображение ошибок через SSH-подключение

  1. 1.

    Подключитесь к серверу по SSH.

  2. 2.

    Выполните команду:

    vim ~/www/domain.ru/bitrix/php_interface/dbconn.php

    Где domain.ru — корневая папка сайта.

  3. 3.

    Кликните клавишу i, чтобы включить режим редактирования, затем в полях $DBDebug и $DBDebugToFile замените параметр «false» на «true»:

    Чтобы выйти из режима редактирования, нажмите Esc. Затем введите команду :qw и нажмите Enter:

Как освободить место для работы БД через панель управления

Для того чтобы освободить место на хостинге, нужно очистить папку /bitrix/backup/. Для этого:

  1. 1.

    Войдите в панель управления ISPmanager. Если внешний вид вашей панели управления отличается от представленного в инструкции, кликните в левом нижнем углу «Старый интерфейс».

  2. 2.

    Перейдите в папку /bitrix/backup/. Выделите файлы, которые вам не нужны, и нажмите Удалить.

  3. 3.

    Чтобы подтвердить удаление, нажмите Ok.

Как освободить место для работы БД через SSH-подключение

  1. 1.
  2. 2.

    Выполните команду:

    cd ~/www/domain.ru/bitrix/backup/

    Где domain.ru — корневая папка вашего сайта.

  3. 3.

    Чтобы удалить ненужные файлы, выполните команду:

    rm domain.ru_20210512_104800_full_da85bdfa.tar domain.ru_20210512_104813_full_1463208a.tar domain.ru_20210512_104925_full_cdf5d6e0.tar

Как изменить данные для подключения к БД через панель управления

Проблема с подключением к базе данных может возникнуть, если в файле /bitrix/php_interface/dbconn.php указаны некорректные логин, пароль или имя базы данных. Чтобы изменить настройки подключения:

  1. 1.
  2. 2.

    Перейдите в раздел Базы данных:

  3. 3.

    Кликните по базе данных и выберите Пользователи:

  4. 4.

    Кликните по пользователю базы данных и выберите Изменить:

  5. 5.

    Кликните на значок «глаз», чтобы увидеть пароль. Проверьте имя пользователя и пароль, затем нажмите Отмена:

    DB Query Error что это значит

  6. 6.

    Перейдите в раздел Главное — Менеджер файлов:

  7. 7.

    Откройте папку php_interface и дважды Кликните по файлу dbconn.php:

  8. 8.

    Заполните поля:

    • $DBLogin — укажите имя пользователя базы данных,
    • $DBPassword — введите пароль пользователя БД,
    • $DBName — укажите имя базы данных.

    Затем нажмите Ok.

  9. 9.

    Битрикс хранит настройки подключения не только в файле dbconn.php, но и в файле .settings.php. Перейдите в папку /bitrix/ и дважды кликните по файлу .settings.php:

  10. 10.

    Заполните поля:

    • database — укажите имя базы данных,
    • login — введите логин пользователя БД,
    • password — укажите пароль пользователя БД.
      Затем нажмите Ok:

Как изменить данные для подключения к БД через SSH-соединение

Перед изменением данных проверьте имя БД, логин и пароль. Чтобы изменить данные для подключения:

  1. 1.
  2. 2.

    Выполните команду:

    vim ~/www/domain.ru/bitrix/php_interface/dbconn.php

    Где domain.ru — корневая директория сайта.

  3. 3.

    Кликните клавишу i, чтобы включить режим редактирования. Заполните поля:

    • $DBLogin — укажите имя пользователя БД,
    • $DBPassword — введите пароль пользователя базы,
    • $DBName — укажите название базы данных.

    Затем нажмите Esc, чтобы выйти из режима редактирования, введите команду :qw и нажмите Enter.

  4. 4.

    Настройки подключения к базе данных хранятся ещё в одном файле — .settings.php. Чтобы открыть его, выполните команду:

    vim ~/www/domain.ru/bitrix/.settings.php

    Где domain.ru — корневая папка сайта.

  5. 5.

    Нажмите на клавишу i, чтобы включить режим редактирования. Заполните поля:

    • database — введите имя базы данных,
    • login — укажите имя пользователя БД,
    • password — введите пароль пользователя БД.

    Чтобы выйти из режима редактирования, нажмите Esc. Затем введите команду :qw и нажмите Enter.

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

Главная
G-Web IT. Битрикс-интегратор. Сложный ecommerce и нестандартные интеграции.
G-Web IT

Адрес:
Летная улица, 30, корпус 1
141021
Мытищи,

Электронная почта: info@goldwebit.net

По будням с 10:00 до 20

Битрикс файл bitrix/.settings.php

Секция exception_handling

Отвечает за обработку ошибок.


 'exception_handling' => array (
  'value' => array (
  'debug' => false,
  'handled_errors_types' => E_ALL & ~E_NOTICE &
~E_STRICT & ~E_USER_NOTICE,
  'exception_errors_types' => E_ALL & ~E_NOTICE &
~E_WARNING & ~E_STRICT & ~E_USER_WARNING &
~E_USER_NOTICE & ~E_COMPILE_WARNING & ~E_DEPRECATED,
   'ignore_silence' => false,
  'assertion_throws_exception' => true,
  'assertion_error_type' => 256,
  'log' => array (
   'settings' => array (
    'file' => 'bitrix/modules/error.log',
    'log_size' => 1000000,
   ),
   ),
  ),
   'readonly' => false,
 ),

Параметр Значение
debug Ключ отвечает за то, будет ли выведена ошибка на страницу в браузере.
Выводить ошибки рекомендуется только на время разработки или отладки.
Иначе потенциально может быть разглашение информации.
handled_errors_types В ключе задаются типы ошибок, которые система отлавливает (не игнорирует).
exception_errors_types В ключе задаются типы ошибок, при которых система выбрасывает исключение.
ignore_silence Ключ отменяет действие оператора управления ошибками (@).
log В ключе задаются параметры логирования ошибок.
Если ключа нет — логирования не будет.
Если задать как показано в примере:

'log' => array (
   'settings' => array (
      'file' => 'bitrix/modules/error.log',
      'log_size' => 1000000,
   ),
),

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

'log' => array(
   'class_name' => 'MyLog', 


   'extension' => 'MyLogExt', 
   'required_file' => 'modules/mylog.module/mylog.php' 

   'settings' => array( 
      ),
),

В приведенном примере: class_name - пользовательский класс, наследуемый от ExceptionHandlerLog.
Может быть не указан. 
В этом случае будет использоваться BitrixMainDiagFileExceptionHandlerLog.
extension - расширение PHP, использовать можно только вместе с class_name.
required_file - включаемый файл. Используется только вместе с class_name.
settings - настройки для класса, указанного в class_name

assertion_throws_exception Включение поддержки команды assert.
assertion_error_type В ключе задаются типы ошибок, для которых не верный assert выбрасывает исключение.

В handled_errors_types, exception_errors_types, assertion_error_type необходимо передать тип ошибки. Тип ошибки представляет из себя числовой код. Но коды знать и помнить не нужно. Например, параметр exception_errors_types. Что означает данная запись: E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_USER_WARNING & ~E_USER_NOTICE & ~E_COMPILE_WARNING?

Возврат к списку

Понравилась статья? Поделить с друзьями:
  • Битрикс settings php скрыть вывод ошибок
  • Бинар ошибка н01
  • Битрикс restore php 500 ошибка
  • Бинар ошибка е50
  • Битрикс http авторизация ошибка