Инструменты пользователя

Инструменты сайта


rabota_s_direktivami_php.ini_v_httpd.conf

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

rabota_s_direktivami_php.ini_v_httpd.conf [2015/09/19 08:32] (текущий)
Строка 1: Строка 1:
 +====== Работа с директивами PHP.ini в httpd.conf ======
  
 +  * [[php.ini]] - конфигурационный файл PHP
 +  * Директива [[AllowOverride]]
 +  * [[.htaccess]]
 +  * [[http://​php.net/​manual/​ru/​configuration.changes.php|Запуск PHP как модуля Apache]]
 +
 +По этой ссылке перечеслен [[http://​www.php.net/​manual/​ru/​ini.list.php|список директив php.ini]], которые вы можете использовать для настройки [[PHP]]. В столбце "​Место изменения"​ показаны режимы. Эти режимы определяют,​ когда и где директива PHP может или не может быть установлена,​ и каждая директива в руководстве относится к одному из этих режимов. К примеру,​ некоторые настройки могут быть установлены с помощью PHP-скрипта,​ использующего ini_set(), тогда как другие могут требовать php.ini или httpd.conf. ​
 +
 +Когда PHP используется как модуль [[Apache]] вы также можете менять настройки конфигурации,​ используя директивы в файлах конфигурации Apache (например,​ httpd.conf) и файлах .htaccess. Для этого вам необходимы "​AllowOverride Options"​ или "​AllowOverride All" привилегии.
 +
 +Для работы с 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]] или ini_set(). Чтобы очистить предыдущее значение используйте значение //none//.
 +  * Директивы php_flag и php_admin_flag служат для установки логических значений директив php.ini.
 +
 +**Частные случаи применения:​**
 +  * Параметр **open_basedir** зададим в описании виртуального хоста, чтобы пользователь не мог его отменить через .htaccess Разрешим две директории.<​file bash>
 +<​VirtualHost *:443>
 +        php_admin_value open_basedir "/​var/​www/​example.com:/​tmp"​
 +
 +        ServerName example.com
 +        DocumentRoot /​var/​www/​example.com
 +        <​Directory /​var/​www/​example.com/>​
 +                Options -FollowSymLinks MultiViews -Indexes
 +                AllowOverride All
 +                Order allow,deny
 +                allow from all
 +        </​Directory>​
 +</​VirtualHost>​
 +</​file>​
rabota_s_direktivami_php.ini_v_httpd.conf.txt · Последние изменения: 2015/09/19 08:32 (внешнее изменение)