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

Вот в это случае очень удобно использовать директивы для apache.
В литературе по PHP, про директивы пишут так:

Для работы с 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.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

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

http://noted.org.ua/?p=2611


Также, вы можете отблагодарить меня переслав любую сумму на любой кошелек WebMoney, для поддержания данного ресурса. Или просто админу на пиво ;)

Кошельки для получения благодарности:
R386985788805
U234140473141
Z147712360455

На данной странице нет комментариев, возможно они закрыты. Если Вы хотите оставить свой комментарий, перейдите на специально созданный раздел

Add your comment now

You must be logged in to post a comment.