Solicitações de roteamento com base no URL

1

Estou configurando alguns serviços que residirão atrás de um único IP (ou seja, NAT). Alguns desses serviços usarão a mesma porta. Por exemplo, digamos que eu hospedaria dois sites diferentes em servidores WebA e WebB diferentes. Para um visitante externo, quero que ambos usem a porta 80. A determinação de qual servidor deve responder à solicitação deve ser feita inspecionando o URL, digamos que eu tenho weba.example.com e webb.example.com , eles devem ser atendidos pelo servidor apropriado. / p>

No trabalho, sei que fazemos isso usando loadbalancers F5 e construímos regras chamadas "iRules". Isso é massivamente exagerado para o meu cenário. Quais ferramentas disponíveis existem para realizar isso? Eu olhei para o Zen Loadbalancer desde que percebi que seria algo que todos os balanceadores fazem, mas parece que não.

    
por carlpett 09.10.2013 / 22:30

3 respostas

4

O Squid pode funcionar como um proxy reverso da web que faz o que você quer - veja Proxy reverso com vários servidores da Web de backend

Você pode configurar o roteador para encaminhar a porta 80 para o servidor do squid e deixar o squid encaminhar a solicitação para diferentes servidores da Web internos.

    
por 09.10.2013 / 23:02
4

Os proxies reversos fazem exatamente o que você quer, e o Apache os suporta.

Você pode ter problemas se o aplicativo da Web fizer uso pesado ou estranho de Javascript. Você também pode precisar alterar qualquer configuração usada pelo aplicativo da web - alguns precisam saber qual URL retornar ao criar páginas de resposta e tal.

Aqui é um guia que usei no passado.

    
por 09.10.2013 / 23:00
1

Para os servidores web, você pode usar o Apache + virtual hosts + mod_proxy configurado como um proxy reverso.

    
por 09.10.2013 / 22:56