Проверьте ваши log_errors_max_len
настройки PHP. От php.net :
log_errors_max_len
integer
- изменяемый: PHP_INI_ALL
Установить
максимальная длина log_errors
в байтах.
В error_log
информация о
источник добавлен. По умолчанию 1024
а 0 позволяет не применять максимум
длина вообще. Эта длина применяется
регистрируемые ошибки, отображаемые ошибки и
также до $php_errormsg
.
Для проверки: ( с помощью этой фиктивной ошибки )
<?php
error_reporting(E_ALL|E_STRICT);
ini_set('display_errors',0);
ini_set('log_errors',1);
ini_set('log_errors_max_len','0'); //change this value
ini_set('html_errors',0);
function deepTrace($a, $b, $c) {
if ($c < 50) {deepTrace($a, $b, $c+1);} else {throw new Exception('Example exception that together with the trace is over 1024 bytes.');}
}
deepTrace('example','function',0);
?>
Если изменение log_errors_max_len
в этом примере кода на 0 не работает, но изменение его на число больше 1024 имеет некоторый эффект, то вы почти наверняка загружаете zend_extension
где-то, что переопределяет стандартное поведение PHP, такие как Zend Optimizer, Zend Debugger, Xdebug и т. д.
Попробуйте grep -r zend_extension /etc/php.*
, чтобы найти любые используемые расширения; если найдена подходящая строка, которая не закомментирована, значит, ваш виновник.