Preâmbulo:
Configurei um servidor acessível publicamente com vários hosts virtuais. As solicitações para um host virtual precisam ser enviadas para um servidor backend. Todas as outras solicitações precisam ser atendidas localmente.
Problema:
A solicitação para TODOS os hosts virtuais é repassada para o endereço IP especificado na diretiva ProxyPass assim que o site que precisa ser proxy estiver habilitado. Quando tento visitar qualquer um dos outros hosts virtuais, recebo a página do site com proxy. Ao desativar o site com proxy, todos os outros hosts virtuais retomam a operação normal e são servidos localmente.
Configuração:
A configuração que tenho no servidor acessível publicamente para os hosts virtuais: (outros hosts virtuais são cópias da mesma configuração)
<VirtualHost *:80>
ServerName www.mainsite.com
ServerAlias mainsite.com
ServerAdmin [email protected]
DirectoryIndex index.php
DocumentRoot /var/www/mainsite.com
<Directory />
AllowOverride None
</Directory>
LogLevel info
ErrorLog /var/log/mainsite.com_err.log
CustomLog /var/log/mainsite.com_access.log combined
</VirtualHost>
A configuração que tenho no servidor acessível publicamente para o host virtual ser proxy:
<VirtualHost *:80>
ServerName calendar.othersite.com
ServerAdmin [email protected]
ProxyRequests Off
<Location />
ProxyPass http://192.168.0.1/
ProxyPassReverse http://192.168.0.1/
</Location>
<Proxy>
Order Allow,Deny
Allow from all
</Proxy>
TransferLog /var/log/othersite.com_access.log
ErrorLog /var/log/othersite.com_err.log
CustomLog /var/log/othersite.com.log combined
LogLevel debug
</VirtualHost>
Responder1
Tentar
sudo ln -s /etc/apache2/mods-available/proxy.load /etc/apache2/mods-enabled
sudo ln -s /etc/apache2/mods-available/proxy_http.load /etc/apache2/mods-enabled
sudo /etc/init.d/apache2 restart