Uma combinação de ARR e regras de reescrita resolverá isso muito bem. Aqui estão os passos a seguir:
- Faça o download e instale o ARR link
- No Gerenciador do IIS, selecione seu computador no painel Conexões, clique duas vezes no recurso Roteamento de Solicitação de Aplicativo na seção IIS, clique no link "Proxy do servidor" no painel Ações, marque a caixa de seleção "Ativar proxy" e escolhe a ação Aplicar.
- Altere as ligações de seus dois sites existentes - Por exemplo, ligue o site Lançado à porta 81 e o site Experimental à porta 82.
- Crie um novo site e apppool e vincule-o "http: *: 80:". Nomeie-o como "Site Padrão". Aponte o caminho físico para "% SystemDrive% \ inetpub \ DefaultWebSite"
-
Crie um arquivo web.config para o site "Default" e escreva suas regras de roteamento lá:
<rules> <rule name="Reverse Proxy for Experimental" stopProcessing="true"> <match url="^.*/experimental/.*" /> <action type="Rewrite" url="http://{HTTP_HOST}:82/{R:0}" /> </rule> <rule name="Reverse Proxy for Release" stopProcessing="true"> <match url=".*" /> <action type="Rewrite" url="http://{HTTP_HOST}:81/{R:0}" /> </rule> </rules>
-
Você pode ter que mexer um pouco com suas regras de reescrita, pode experimentar usando o miniaplicativo do módulo de regravação de URL no IIS e leia mais sobre isso aqui: link Para mais ajuda, acesse e navegue pelo blog de Ruslan Yakushev: link
Isso lhe dará três sites completamente separados, acessíveis através de uma única fachada na porta 80 (embora, é claro, você possa acessar cada site diretamente na porta 81 e 82 se precisar: link por exemplo.