Apache Mod_Proxy como Front-End de acesso e balanceamento de diversas aplicações web
Já pensou em ter que disponibilizar uma porta 80 ou 443 para cada aplicação web? Não seria nada barato e nem prático. Mesmo que você tenha um range de IPs fixos para isso, não seria muito interessante. Então, conheça (caso ainda não) o Apache Mod_Proxy para resolver este problema!
Parte 5: Front-End para Microsoft IIS
Para o nosso servidor web IIS, temos a seguinte configuração comentada e que normalmente são alteradas de acordo com a aplicação ou ambiente:
Neste caso, todas as requisições que chegarem ao nosso front-end através da URL http://nome1.site.com/, serão encaminhadas ao servidor IIS de forma transparente, assim como as respostas do servidor IIS ao cliente.
<VirtualHost *:80>
ServerName nome1.site.com # Nome do site
ServerAlias nome1.site.com # URL que o site é acessado
ProxyRequests Off
ProxyPreserveHost On
ErrorLog logs/nome1_site_error_log # Arquivo de logs de erro especifico para o site
TransferLog logs/nome1_site_access_log # Arquivo de logs de acessos especifico para o site
LogLevel warn
<Proxy 192.168.1.1:80> # Permissão para o servidor front-end (proxy)
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://192.168.1.2/ # A "/" após o ProxyPass é o path de acesso na URL (acessando apenas o nome do site)
ProxyPassReverse / http://192.168.1.2/
</VirtualHost>
ServerName nome1.site.com # Nome do site
ServerAlias nome1.site.com # URL que o site é acessado
ProxyRequests Off
ProxyPreserveHost On
ErrorLog logs/nome1_site_error_log # Arquivo de logs de erro especifico para o site
TransferLog logs/nome1_site_access_log # Arquivo de logs de acessos especifico para o site
LogLevel warn
<Proxy 192.168.1.1:80> # Permissão para o servidor front-end (proxy)
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://192.168.1.2/ # A "/" após o ProxyPass é o path de acesso na URL (acessando apenas o nome do site)
ProxyPassReverse / http://192.168.1.2/
</VirtualHost>
Neste caso, todas as requisições que chegarem ao nosso front-end através da URL http://nome1.site.com/, serão encaminhadas ao servidor IIS de forma transparente, assim como as respostas do servidor IIS ao cliente.