у меня есть ЛАМПА сервер, обслуживающий несколько различных веб-сайтов, использующих ИмяVirtualHosts.
До недавнего времени глобальный php.ini файл был в порядке, но недавно один из наших разработчиков запросил некоторые настройки в php.ini, которые я бы предпочел не устанавливать глобально.
Я почти уверен, что слышал, что вы можете настроить файлы php.ini на на сайт основы, но не знаю, как это сделать.
Может ли кто-нибудь указать мне в правильном направлении, как этого добиться?
Большинство настроек, которые вы бы поместили в свой php.ini, также можно поместить в .htaccess или в конфигурация apache для этого сайта. Например, один из моих виртуальных хостов имеет это в .htaccess
php_value display_errors 1
php_value register_globals 0
php_value short_open_tag 0
php_value magic_quotes_runtime 0
php_value magic_quotes_gpc 0
php_value session.name "PHPSESSID_SITEBLAH"
php_value session.gc_maxlifetime 57600
php_value session.gc_probability 1
php_value session.gc_divisor 500
Вы также можете указать параметры конфигурации в файле конфигурации Apache (httpd.conf / apache.conf). В вашем случае вы можете указать значения конфигурации в контексте.
В следующем примере для виртуального хоста example.com должно быть установлено значение upload_max_filesize равным 10M.
<VirtualHost *>
ServerName example.com
DocumentRoot /path_to_docroot
php_value upload_max_filesize 10M
php_admin_flag allow_url_fopen on
</VirtualHost>
Если вы не хотите устанавливать это значение для всего сайта, а для одного конкретного каталога, в котором находится приложение, вы можете указать значения в файле.
<VirtualHost *>
ServerName example.com
DocumentRoot /path_to_docroot
<Location /testApp/>
php_value upload_max_filesize 10M
php_admin_flag allow_url_fopen on
</Location>
</VirtualHost>
Видеть http://php.net/manual/en/configuration.changes.php для получения дополнительных объяснений.
Еще один вариант - suPHP что позволяет вам определять php.ini для каждого VirtualHost. Он также позволяет вам указать версию PHP для каждого VirtualHost.
Другое предложение - использовать mod-fastcgi или mod-fcgi, которые запускают PHP как отдельный автономный демон. Затем для каждого веб-сайта вы можете определить отдельного пользователя и файл конфигурации php.ini.