- Php admin value error reporting e all
- Необходимые условия и установка привилегий
- Контейнер в httpd.conf
- Примечание
- Директивы httpd.conf для работы с директивами php.ini
- Синтаксис директив php_flag и php_admin_flag
- Синтаксис директив php_value и php_admin_value
- Частные случаи применения
- Пример сброса значения директивы php.ini
- Область применения директив PHP.INI и примеры
- Примечание
- Перечень распространенных директив PHP.INI
- mysql.default_host
- mysql.default_user
- mysql.default_password
- highlight.bg
- highlight.comment
- highlight.default
- highlight.html
- highlight.keyword
- highlight.string
- display_errors
- display_startup_errors
- magic_quotes_gpc
- register_globals
- safe_mode
- short_open_tag
- auto_prepend_file
- auto_append_file
- error_log
- extension_dir
- max_execution_time
- upload_max_filesize
- post_max_size
- error_reporting
- memory_limit
- sendmail_from
- sendmail_path
- allow_url_fopen
- user_agent
- default_socket_timeout
- error_reporting
- Список параметров
- Возвращаемые значения
- Список изменений
- Примеры
- Примечания
- Смотрите также
Php admin value error reporting e all
Директивы для конфигурирования PHP можно размещать не только в файле php.ini, но также и в конфигурационных файлах Apache – httpd.conf и .htaccess. Это позволяет проводить тонкую настройку php для разных директорий и виртуальных хостов.
Необходимые условия и установка привилегий
Использование директив php в конфигурационных файлах Apache возможно только при подключении PHP в качестве модуля, а также при соответствующей настройке привилегий AllowOverride, которые должны быть установлены либо в значение Options, либо в значение All.
AllowOverride Options
AllowOverride All
Для того, чтобы установить максимально возможные привилегии для всего сервера найдите в файле httpd.conf контейнер и установите в нем значение All для директивы AllowOverride.
Контейнер в httpd.conf
Options FollowSymLinks
AllowOverride All
Order deny,allow
# Deny from all
Satisfy all
Примечание
Если на Вашем сервере размещаются сайты, доступ к публикации которым имеете не только Вы, то будьте осторожны с назначением максимальных привилегий (All) директивой AllowOverride, так как это дает возможность любому человеку, имеющему доступ к аккаунту сайта, переопределять настройки веб-сервера. В этом случае, Вы должны установить минимально-необходимые привилегии.
Директивы httpd.conf для работы с директивами php.ini
Для работы с PHP в конфигурационных файлах Apache доступны 4 директивы: php_value, php_flag, php_admin_value, php_admin_flag, которые отличаются значимостью, типом устанавливаемых значений и местом применения.
Директивы php_value и php_flag могут использоваться как в файлах httpd.conf, так и в файлах .htaccess, т.е. их использование доступно, практически, любому владельцу сайта (при наличии соответствующих привилегий AllowOverride, о которых говорилось выше).
Директивы php_admin_value и php_admin_flag можно использовать только в файле httpd.conf и любой параметр, заданный с помощью этих директив не может быть переопределен в файлах .htaccess.
Директивы php_flag и php_admin_flag служат для установки логических значений директив php.ini.
Синтаксис директив php_flag и php_admin_flag
php_flag имя_директивы_php On|Off
php_admin_flag имя_директивы_php On|Off
Директивы php_value и php_admin_value служат для установки строковых и числовых значений директив php.ini, т.е. любых типов значений, за исключением логических.
Синтаксис директив php_value и php_admin_value
php_value имя_директивы_php значение
php_admin_value имя_директивы_php значение
Частные случаи применения
Если устанавливаемое значение представляет собой строку с пробелами, то его следует заключить в кавычки. Пример:
php_value auto_prepend_file «c:/web сервер/prepend.php»
Для сброса значений следует использовать синтаксис:
php_admin_flag имя_директивы_php none
Пример сброса значения директивы php.ini
php_value error_reporting none
Область применения директив PHP.INI и примеры
Директивы php.ini отличаются по областям применения. Часть директив можно изменять даже через php-скрипты во время их выполнения, часть можно применять только в файлах httpd.conf, некоторые доступны для изменения через.htaccess, а особо важные можно устанавливать только в файле php.ini. Ниже приведены наиболее интересные и частоупотребимые директивы php, которые можно изменить в конфигурационных файлах Apache (httpd.conf, .htaccess).
Примечание
Полный список директив PHP и областей их применения можно посмотреть в руководстве по PHP, распространяемым c сайта php.net
Перечень распространенных директив PHP.INI
mysql.default_host
Устанавливает имя хоста базы данных
Область применения: httpd.conf, .htaccess
Пример: php_value mysql.default_host localhost
mysql.default_user
Устанавливает имя пользователя базы данных
Область применения: httpd.conf, .htaccess
Пример: php_value mysql.default_user vasia
mysql.default_password
Устанавливает пароль пользователя базы данных
Область применения: httpd.conf, .htaccess
Пример: php_value mysql.default_password Xcfg45
highlight.bg
Устанавливает цвет фона при выводе php-кода функциями highlight_file() и highlight_string().
Область применения: httpd.conf, .htaccess
Пример: php_value highlight.bg #FFFFFF
highlight.comment
Устанавливает цвет комментариев при выводе php-кода функциями highlight_file() и highlight_string().
Область применения: httpd.conf, .htaccess
Пример: php_value highlight.comment #FF9900
highlight.default
Устанавливает цвет ключевых слов, переменных, имен функций при выводе php-кода функциями highlight_file() и highlight_string()
Область применения: httpd.conf, .htaccess
Пример: php_value highlight.default #0000BB
highlight.html
Устанавливает цвет html-кода при выводе php-кода функциями highlight_file() и highlight_string()
Область применения: httpd.conf, .htaccess
Пример: php_value highlight.html #000000
highlight.keyword
Устанавливает цвет конструкций языка, скобок, операторов при выводе php-кода функциями highlight_file() и highlight_string().
Область применения: httpd.conf, .htaccess
Пример: php_value highlight.keyword #007700
highlight.string
Устанавливает строковых параметров при выводе php-кода функциями highlight_file() и highlight_string().
Область применения: httpd.conf, .htaccess
Пример: php_value highlight.string #DD0000
display_errors
Разрешает вывод ошибок и предупреждений в браузер.
Область применения: httpd.conf, .htaccess
Пример: php_flag display_errors Off
display_startup_errors
Включает отображение ошибок, возникающих при запуске PHP.
Область применения: httpd.conf, .htaccess
Пример: php_flag display_startup_errors Off
magic_quotes_gpc
Включает автоматическую обработку кавычек и апострофов, в данных GET, POST, и Cookie.
Область применения: httpd.conf, .htaccess
Пример: php_flag magic_quotes_gpc On
register_globals
Включает автоматическое создание переменных PHP из данных, полученных извне. Если директива register_globals выключена, то доступ к данным, полученным извне методами GET, POST, через COOKIE и т.п., возможен только через суперглобальные массивы.
Область применения: httpd.conf, .htaccess
Пример: php_flag register_globals Off
safe_mode
Включение безопасного режима
Область применения: httpd.conf
Пример: php_flag safe_mode On
short_open_tag
Включение режима поддержки короткого синтаксиса php-кода
Область применения: httpd.conf, .htaccess
Пример: php_flag short_open_tag On
auto_prepend_file
Определение файла, который будет выводится в начале каждого php-скрипта. Путь указывается от корня файловой системы сервера. С помощью этой директивы можно, например, подключить ко всем php-файлам скрипт подключения к базе данных, вынеся его за пределы пространства, доступного через браузер. Это позволит немного повысить защиту сайта от взлома.
Область применения: httpd.conf, .htaccess
Пример: php_value auto_prepend_file /www/server/prepend.php
auto_append_file
Определение файла, который будет выводится в конце каждого php-скрипта.
Область применения: httpd.conf, .htaccess
Пример: php_value auto_append_file /www/server/append.php
error_log
Устанавливает имя файла-журнала для записи ошибок, возникающих при выполнении php-скриптов, либо позволяет перенаправить вывод ошибок на syslog – для этого вместо имени файла нужно указать слово syslog.
Область применения: httpd.conf, .htaccess
Пример: php_value error_log /var/log/php_error.log
extension_dir
Устанавливает имя директории, в которой расположены загружаемые расширения PHP
Область применения: httpd.conf
Пример: php_admin_value extension_dir c:/php-5.1.4/ext/
max_execution_time
Устанавливает максимальное время выполнения php-скриптов
Область применения: httpd.conf, .htaccess
Пример: php_admin_value max_execution_time 60
upload_max_filesize
Устанавливает максимальный размер файла, который можно загрузить на сервер.
Область применения: httpd.conf, .htaccess
Пример: php_admin_value upload_max_filesize 5M
post_max_size
Устанавливает максимальный объем данных, которые могут быть переданы методом POST.
Область применения: httpd.conf, .htaccess
Пример: php_admin_value post_max_size 5M
error_reporting
Определяет типы (уровени важности) фиксируемых ошибок.
Область применения: httpd.conf, .htaccess
Пример: php_value error_reporting “E_ALL & ~E_NOTICE”
memory_limit
Определяет максимальный объем оперативной памяти, который может быть задействован php-скриптом.
Область применения: httpd.conf, .htaccess
Пример: php_admin_value memory_limit 8M
sendmail_from
Устанавливает e-mail отправителя, который применяется при отправке почтовых сообщений с помощью PHP.
Область применения: httpd.conf, .htaccess
Пример: php_value sendmail_from apache@server.ru
sendmail_path
Устанавливает путь к программе, которая будет использоваться при отправке почте функцией mail().
Область применения: httpd.conf
Пример: php_admin_value sendmail_path /usr/sbin/sendmail
allow_url_fopen
Разрешает работу с ресурсами URL, запрашиваемыми по протоколам http и ftp, как с файлами.
Область применения: httpd.conf, .htaccess
Пример: php_admin_flag allow_url_fopen Off
user_agent
Устанавливает строку User-agent, которая используется PHP при обращении к удаленным серверам.
Область применения: httpd.conf, .htaccess
Пример: php_value user_agent “Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)”
default_socket_timeout
Устанавливает максимальное время ожидания (таймаут) для потоков, использующих сокеты.
Область применения: httpd.conf, .htaccess
Пример: php_value default_socket_timeout 60
error_reporting
Функция error_reporting() задает значение директивы error_reporting во время выполнения. В PHP есть много уровней ошибок. Используя эту функцию, можно задать уровень ошибок времени выполнения скрипта, которые попадут в отчет. Если необязательный аргумент level не задан, error_reporting() вернет текущее значение уровня протоколирования ошибок.
Список параметров
Новое значение уровня error_reporting. Это может быть битовая маска или именованные константы. При использовании именованных констант нужно будет следить за совместимостью с новыми версиями PHP. В новых версиях могут добавиться новые уровни ошибок, увеличиться диапазон целочисленных типов. Все это может привести к нестабильной работе при использовании старых целочисленных обозначений уровней ошибок.
Доступные константы уровней ошибок и их описания приведены в разделе Предопределенные константы.
Возвращаемые значения
Возвращает старое значение уровня error_reporting либо текущее значение, если аргумент level не задан.
Список изменений
Версия | Описание |
---|---|
5.4.0 | E_STRICT стал частью E_ALL . |
5.3.0 | Добавлены E_DEPRECATED и E_USER_DEPRECATED . |
5.2.0 | Добавлена E_RECOVERABLE_ERROR . |
5.0.0 | Добавлена E_STRICT (не входит в состав E_ALL ). |
Примеры
Пример #1 Примеры использования error_reporting()
// Выключение протоколирования ошибок
error_reporting ( 0 );
// Включать в отчет простые описания ошибок
error_reporting ( E_ERROR | E_WARNING | E_PARSE );
// Включать в отчет E_NOTICE сообщения (добавятся сообщения о
//непроинициализированных переменных или ошибках в именах переменных)
error_reporting ( E_ERROR | E_WARNING | E_PARSE | E_NOTICE );
// Добавлять сообщения обо всех ошибках, кроме E_NOTICE
error_reporting ( E_ALL & ~ E_NOTICE );
// Добавлять в отчет все PHP ошибки (см. список изменений)
error_reporting ( E_ALL );
// Добавлять в отчет все PHP ошибки
error_reporting (- 1 );
// То же, что и error_reporting(E_ALL);
ini_set ( ‘error_reporting’ , E_ALL );
Примечания
Большинство E_STRICT ошибок отлавливаются на этапе компиляции, поэтому такие ошибки не включаются в отчет в файлах, где error_reporting расширен для включения E_STRICT ошибок (и наоборот).
Если передать -1, будут отображаться все возможные ошибки, даже если в новых версиях PHP добавятся уровни или константы. В версии PHP 5.4. передача константы E_ALL дает тот же результат.
Смотрите также
- Директива display_errors
- Директива html_errors
- Директива xmlrpc_errors
- ini_set() — Установка значения настройки конфигурации