URL de saída reescreve o aplicativo de falha ARR do IIS 7

1

Estou tendo problemas ao configurar um redirecionamento de URL de saída do proxy reverso no IIS 7 com ARR. O domínio tem duas reescritas de URL de entrada e uma reescrita de URL de saída. Os inbound funcionam bem e eu não vi nenhum problema com eles.

No entanto, o redirecionamento de saída parece travar o pool de aplicativos toda vez que ele é ativado. E continuará batendo até que eu desative a regra de saída. Eu acho que pode ser algum tipo de loop nos meus redirecionamentos, mas não tenho certeza. Eu não estou muito familiarizado com a regex e não consegui encontrar muita coisa em pesquisas on-line.

Aqui estão os dois redirecionamentos de entrada que funcionam:

<rule name="Rule1" enabled="true" stopProcessing="false">
                <match url="^blog/$" />
                <serverVariables>
                    <set name="HTTP_ACCEPT_ENCODING" value="0" />
                    <set name="HTTP_X_FORWARDED_HOST" value="domain.com" />
                </serverVariables>
                <action type="Rewrite" url="http://blog.domain.com" appendQueryString="True" />
            </rule>
            <rule name="Rule2" enabled="true" stopProcessing="false">
                <match url="^blog/(.*)" />
                <serverVariables>
                    <set name="HTTP_ACCEPT_ENCODING" value="0" />
                    <set name="HTTP_X_FORWARDED_HOST" value="domain.com" />
                    <set name="HTTP_X_FORWARDED_FOR" value="{REMOTE_ADDR}" />
                </serverVariables>
                <action type="Rewrite" url="http://blog.domain.com/blog/{R:1}" appendQueryString="True" />
            </rule>

E aqui está a regra de saída que faz com que o pool de aplicativos trave quando ativado:

<outboundRules rewriteBeforeCache="true">
            <rule name="outRule1" preCondition="isHtml" enabled="false" stopProcessing="false">
                <match filterByTags="A" pattern="^http(s)?://blog.domain.com/blog/(.*)" />
                <action type="Rewrite" value="http{R:1}://www.domain.com/blog/{R:2}" />
                <conditions logicalGrouping="MatchAll">
                </conditions>
            </rule>
            <preConditions>
                <preCondition name="isHtml">
                    <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
                </preCondition>
            </preConditions>
        </outboundRules>

Qualquer ajuda é muito apreciada.

    
por Rob 07.09.2012 / 20:20

1 resposta

1

Você provavelmente precisará definir rewriteBeforeCache como falso para suas regras de saída

Paul

    
por 02.10.2017 / 11:52