Добавьте PHPINIDir в теге VirtualHost и укажите на него на каталог Ваш файл php.ini, который будет использовать vhost.
[....]
PHPINIDir /var/www/web1
[....]
захваченный из http://www.howtoforge.com/how-to-specify-a-custom-php.ini-for-a-website-apache2-with-mod_php
Редактирование 14.04.2010 12:30 EST: ** Nevermind, это изменило "Загруженный Конфигурационный файл" для всего vhosts. **
Как насчет такого изменения настроек внешнего интерфейса? И вам не нужны настройки виртуального хоста в бэкэнде.
<VirtualHost *:80>
ServerName dev.example.com
ProxyPass / http://192.168.144.100:80/
ProxyPassReverse / http://192.168.144.100:80/
</VirtualHost>
<VirtualHost *:80>
ServerName sandbox.example.com
ProxyPass / http://192.168.144.100:80/example.com/dev/
ProxyPassReverse / http://192.168.144.100:80/example.com/dev/
</VirtualHost>
смотрите здесь Использование Virtual_host и mod_proxy вместе в качестве примера
<VirtualHost *:80>
ProxyPreserveHost On
ServerName dev.example.com
ProxyPass / http://192.168.144.100:80/
ProxyPassReverse / http://192.168.144.100:80/
</VirtualHost>
<VirtualHost *:80>
ProxyPreserveHost On
ServerName sandbox.example.com
ProxyPass / http://192.168.144.100:80/
ProxyPassReverse / http://192.168.144.100:80/
</VirtualHost>
Если этот параметр включен, этот параметр ( [ProxyPreserveHost] [1]
) пройдет строка Host: из входящего запроса к проксируемому хосту вместо имени хоста, указанного в строке ProxyPass
.
Я думаю (но не уверен), что в этом случае вы даже можете это сделать без ProxyPreserveHost
, например:
поместите это в свой интерфейс hosts
файл
192.168.144.100 dev.example.com
192.168.144.100 sandbox.example.com
, затем сделайте следующее:
<VirtualHost *:80>
ServerName dev.example.com
ProxyPass / http://dev.example.com/
ProxyPassReverse / http://dev.example.com/
</VirtualHost>
<VirtualHost *:80>
ServerName sandbox.example.com
ProxyPass / http://sandbox.example.com/
ProxyPassReverse / http://sandbox.example.com/
</VirtualHost>