Usando o IIS7 como um proxy reverso

2

Minha pergunta é praticamente idêntica à questão listada, mas eles não obtiveram uma resposta, pois acabaram usando o Linux como proxy reverso.

Usando o IIS7 como um proxy reverso

Eu preciso que o IIS seja o site principal e o linux (Apache) sendo o (s) site (s) com proxy.

então eu tenho

site1.com (IIS7) site2.com (Linux Apache)

eles têm subdomínios de

sub1.site1.com sub2.site1.com

sub3.site2.com

Eu quero que todo o tráfego vá para o site1.com e que qualquer coisa que seja site2.com deva ser intermediada por proxy para a caixa linux na rede interna, (acredite que o ARR pode fazer isso, mas não sabe como).

Não posso executá-lo como o Apache fazendo o proxy, pois preciso que o IIS seja exposto diretamente.

todo e qualquer conselho seria ótimo.

EDITAR

Acho que isso pode me ajudar:

<rule name="Canonical Host Name" stopProcessing="true">    
    <match url="(.*)" />    
    <conditions>    
        <add input="{HTTP_HOST}" negate="true" pattern="^cto\.com$" />  
        <add input="{HTTP_HOST}" negate="true" pattern="^antoniochagoury\.com$" />   
        <add input="{HTTP_HOST}" negate="true" pattern="www.antoniochagoury\.com$" />   
    </conditions>    
    <action type="Redirect" url="http://www.cto20.com/{R:1}" redirectType="Permanent" />    
</rule>  

de: link

Vou dar uma olhada nisso quando tiver acesso à caixa do IIS7.

Obrigado

    
por Jon 18.05.2010 / 12:31

2 respostas

2

Eu juro que isso já foi respondido várias vezes.

Você precisa adicionar dois fragmentos de software ao IIS para usá-lo como um proxy reverso: reescrita de URL e roteamento de solicitação de aplicativo (ARR). Ambos podem ser baixados do site do IIS .

A documentação para você começar pode ser encontrada .

    
por 15.04.2013 / 14:43
0

Sua edição menciona que HTTP_HOST é a variável do servidor para o nome do domínio. Você tem algumas opções. Se o servidor Apache estiver exposto publicamente, você pode usar um redirecionamento como o que você tem lá.

Você precisa de uma referência de volta ao URL para que sejam vinculações exclusivas por site.

Por exemplo, adicione uma quarta condição e verifique se ela está na parte inferior:           

(isso significa - qualquer coisa - não - qualquer coisa (mas um ponto) - não - qualquer coisa (mas um ponto) -)

Agora {C: 1} será uma referência de volta ao seu domínio de segundo nível, sem o TLD. ou seja, site1, site1.

Na sua ação, você pode usar algo assim:

Em seguida, você pode criar ligações no Apache para site1.cto20.com, site2.cto20.com, etc.

A outra opção é configurar o ARR e usar um proxy reverso em vez de um redirecionamento. Isso mantém o URL original e o seu servidor Apache não precisa de um URL público ou IP. Suas regras de reescrita podem ser semelhantes para que cada URL atinja um site diferente no servidor Apache.

    
por 19.05.2010 / 15:27