Я только что узнал, что переопределение настроек php.ini в конфигурации vhost не работает на Apache с suPHP.
Система — Ubuntu Server Edition 14.04 LTS, и я установил Apache + PHP следующим образом:
apt-get install apache2 apache2-mpm-prefork apache2-utils php5
Без изменения каких-либо настроек следующий vhost работает «из коробки»:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/html/public
php_admin_value open_basedir /var/www/html
</VirtualHost>
Можно убедиться, что настройка «open_basedir» соблюдается с помощью phpinfo().
Однако после установки suPHP и suExec:
apt-get install libapache2-mod-suphp apache2-suexec
a2enmod suexec
phpinfo() показывает, что значения по-прежнему те же, что установлены в "/etc/php5/cgi/php.ini". Это справедливо не только для open_basedir, но и для любой настройки, которую я пытаюсь переопределить с помощью php_admin_value
или php_value
.
Есть ли способ заставить вышеописанную настройку работать?
решение1
Документация наhttp://www.suphp.org/FAQ.htmlговорит, что suPHP не поддерживает директиву php_admin_value. Вы могли бы сделать что-то похожее, используя пользовательский файл php.ini и suPHP_ConfigPath
директиву (см.http://www.suphp.org/DocumentationView.html?file=apache/CONFIG).