В наших журналах доступа Apache мы заметили, что пользователи иногда получают ошибку 500. Вероятно, это проблема с запросом к базе данных в нашем коде CodeIgniter. Мы не можем быть уверены, как исправить это, пока не увидим ошибку. Итак, я пытаюсь напечатать ошибку в журнале ошибок, и у меня это не получается. Вот где я:
log_errors = On
error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE);
log_errors_max_len = 0
Я принудительно включил log_errors в CodeIgniter: ini_set('log_errors', 1);
Я изменил права доступа к файлу журнала ошибок на 666.
Я заставил файл журнала ошибок в CodeIgniter с помощью: ini_set('error_log', '/var/log/apache2/minans_error.log');
Я надеюсь, что кто-нибудь скажет мне, в чем я ошибаюсь, посоветует попробовать другие вещи или если я неправильно понимаю способность Apache регистрировать ошибки, чтобы указать мне на это.
Во время тестирования я написал тестовый код с ошибкой PHP. При попытке загрузить страницу произошла ошибка 500, и ошибка PHP была записана в журнал ошибок.
Мы подозреваем, что 500 ошибок, которые получают наши пользователи, являются ошибкой запроса базы данных. Это обрабатывается CodeIgniter и не запускает журнал ошибок Apache. В файле config.php CodeIgniter я установил $config['log_threshold'] = 1
. Теперь CodeIgniter регистрирует ошибки, которые фиксирует. application/logs
каталог.