Acabei de descobrir que substituir as configurações do php.ini na configuração do vhost não funciona no Apache com suPHP.
O sistema é Ubuntu Server Edition 14.04 LTS e instalei Apache + PHP assim:
apt-get install apache2 apache2-mpm-prefork apache2-utils php5
Sem alterar nenhuma configuração, o seguinte vhost funciona imediatamente:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/html/public
php_admin_value open_basedir /var/www/html
</VirtualHost>
Pode-se verificar que a configuração "open_basedir" é respeitada com phpinfo().
No entanto, após instalar o suPHP e o suExec:
apt-get install libapache2-mod-suphp apache2-suexec
a2enmod suexec
phpinfo() mostra que os valores ainda são aqueles definidos em "/etc/php5/cgi/php.ini". Isso é verdade não apenas para open_basedir, mas para qualquer configuração que eu tente substituir por php_admin_value
ou php_value
.
Existe alguma maneira de fazer a configuração acima funcionar?
Responder1
A documentação emhttp://www.suphp.org/FAQ.htmldiz que o suPHP não suporta a diretiva php_admin_value. Você pode conseguir algo semelhante usando um arquivo php.ini personalizado e a suPHP_ConfigPath
diretiva (vejahttp://www.suphp.org/DocumentationView.html?file=apache/CONFIG).