Как посмотреть детали 500 ошибки?

Витрина получает данные от API решения, и когда в API что-то падает, покупатель видит пустой блок или ошибку, а в консоли браузера — ответ 500. Сам текст ошибки наружу не отдаётся: это правильно с точки зрения безопасности, но чинить по нему нечего. Ниже — как получить подробности.

Включить подробности и повторить ошибку

  1. В файле slim/app/settings.php в папке сайта найдите параметр displayErrorDetails и поставьте ему значение true.

  2. Повторите действие, на котором возникает ошибка.

  3. В папке slim/logs найдите файл .log с текущей датой и посмотрите полный текст ошибки — там будет сообщение и место в коде.

Верните displayErrorDetails в false, когда закончите. С включённым параметром подробности ошибки уходят в ответ API, то есть становятся видны снаружи — это лишняя информация о внутренностях сайта.

Другие логи решения

В той же папке slim/logs решение ведёт отдельные журналы по подсистемам, и в них стоит смотреть, когда ошибки как таковой нет, а что-то «не доходит»:

  • push.log — отправка push-уведомлений;

  • sms.log — отправка СМС и кодов авторизации;

  • bitrix24.log — передача лидов и сделок в Битрикс24.

Логи растут, и на большом магазине занимают заметное место — эта папка уже разрасталась до одиннадцати гигабайт. Если разбираетесь со старой проблемой, смотрите файл по дате, а не самый большой.

Если ошибка не в API

Ошибка бывает и на стороне Битрикса — тогда в slim/logs не будет ничего. Смотрите:

  • журнал ошибок PHP на сервере — путь задан в настройках PHP;

  • bitrix/php_interface/dbconn.php, где может быть включён вывод ошибок Битрикса;

  • 502 Bad Gateway — если страница не открывается совсем, причина обычно другая и разобрана там.

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