Ведение журнала ошибок PHP не работает через .htaccess - PullRequest
15 голосов
/ 09 октября 2009

Мне нужно, чтобы все ошибки PHP были записаны в файл на моем компьютере с ОС centOS. Я думаю, что делаю все, что должен. Вот мой файл .htaccess:

php_flag display_errors off
php_flag log_errors On
php_flag error_log /var/www/vhosts/hostname/logs/fo_errors.log
  • В моем php.ini я установил error_reporting = E_ALL.
  • Apache анализирует .htaccess
  • /var/www/vhosts/hostname/logs/fo_errors.log имеет владельца, установленного на apache:apache, и имеет права на запись.

У меня нет идей .. кто-нибудь может помочь?

Спасибо

Ответы [ 2 ]

23 голосов
/ 09 октября 2009

Попробуйте добавить следующую тестовую страницу в корневой каталог:

<code><?php
// debug.php
echo "<pre>";
echo "log_errors = [", ini_get('log_errors'), "]\n";
echo "error_log = [", ini_get('error_log'), "]\n";
echo "writeable? ", is_writable(ini_get('error_log')) ? 'Yes' : 'No', "\n";
echo "
"; error_log ("Тест из error_log ()"); user_error ("Ошибка тестирования от user_error ()");

Перейдите к /debug.php, и вы должны увидеть следующее:

log_errors = [1]
error_log = [/var/www/vhosts//logs/fo_errors.log]
Writeable? Yes

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

14 голосов
/ 09 октября 2009

Возможно, вы захотите использовать php_value, а не php_flag, когда задаете путь к журналу. php_flag используется только для установки логических свойств конфигурации.

php_flag display_errors off 
php_flag log_errors On 
php_value error_log /var/www/vhosts/hostname/logs/fo_errors.log 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...