В .htaccess
:
php_value error_reporting 2147483647
Это число, согласно документации, должно разрешать ошибки «все» независимо от версии, если вы хотите более детальную настройку, вручную ИЛИ значения вместе или запускать
php -r 'echo E_ALL | E_STRICT ;'
, чтобы позволить php вычислить значение для вас.
Тебе нужно
AllowOverride All
в основной конфигурации apaches для включения файлов .htaccess.
Подробнее об этом можно прочитать здесь:
Уведомление Если вы используете Php-CGI вместо mod_php, это может работать не так, как объявлено, и все, что вы получите, - это внутренняя ошибка сервера, и у вас не останется ничего, кроме включения это либо для всего сайта на основе сценариев с
error_reporting( E_ALL | E_STRICT );
или аналогичные конструкции до возникновения ошибки.
Мой совет: отключить отображение ошибок пользователю и активно использовать функцию php error_log.
display_errors = 0
error_logging = E_ALL | E_STRICT
error_log = /var/log/php
Если у вас есть проблемы с тем, что это слишком шумно, это не означает, что вам нужно просто выборочно снимать отчеты об ошибках, это знак, что кто-то должен исправить код.
@ Roger
Да, вы можете использовать его в конструкции <<code>
Directory> и в конфигурации apache, однако .htaccess в этом случае эквивалентен и делает его более переносимым, особенно если у вас есть несколько рабочих извлекаемых копий одна и та же кодовая база, и вы хотите распространить это изменение на все из них.
Если у вас несколько виртуальных хостов, вам понадобится конструкция в соответствующем определении виртуальных хостов, в противном случае да
<Directory /path/to/wherever/on/filesystem>
<IfModule mod_php5.c>
php_value error_reporting 214748364
</IfModule>
</Directory>
Дополнительные команды "ifmodule" являются просто сетью безопасности, поэтому вышеупомянутая проблема с умирающим apache, если у вас нет mod_php, не возникнет.