Arquivo php.ini separado para cada host virtual do Apache?

11

É possível ter um arquivo php.ini separado que substitua o arquivo php.ini padrão para cada host virtual? Estou executando o Apache / 2.2.14, PHP 5.3.2-1.

Por exemplo, tenho vários vhosts apontando para domínios no meu diretório /var/www/ :

/var/www/website1.com  
/var/www/website2.com

O que eu gostaria é poder colocar um arquivo php.ini personalizado em cada diretório que substituiria os valores padrão apenas para esse vhost, mas manteria os padrões originais se o valor não for especificado:

/var/www/website1.com/htdocs/
/var/www/website1.com/php.ini

Editar
Para os interessados, encontrei mais informações sobre o tópico em Como faço para configurar arquivos php.ini por site em um servidor LAMP usando NameVirtualHosts? .

    
por Calvin 21.05.2010 / 01:29

3 respostas

6

Se você estiver usando mod_php, você pode substituir os valores que você deseja no httpd.conf. Existem estas diretivas de módulo:

php_value - PHP Value Modifier
php_flag - PHP Flag Modifier
php_admin_value - PHP Value Modifier (Admin)
php_admin_flag - PHP Flag Modifier (Admin)

Se não, sua melhor chance é o PHP FPM (google it).

    
por 21.05.2010 / 01:57
0

Se você estiver usando cgi (ou fastcgi, ou fpm, que é fastcgi também), você pode usar o .user.ini files .

Basta colocar um arquivo .user.ini em seu diretório webroot com suas opções de php, da seguinte maneira:

memory_limit=256M
upload_max_filesize=200M
post_max_size=200M

E o php estenderá o arquivo php.ini principal com essas opções.

    
por 02.01.2017 / 17:06
-3

Adicione o PHPINIDir dentro da tag VirtualHost e aponte para o diretório seu arquivo php.ini que o vhost estará usando.

<VirtualHost *:80>
[....]
PHPINIDir /var/www/web1
[....]
</VirtualHost>

retirado de link

Editar 14/04/2010 12:30 pm EST: ** Nevermind, isso mudou o "Loaded Configuration File" para todos os vhosts. **

    
por 03.12.2010 / 15:27