Исходящий URL переписывает приложение катастрофического отказа IIS 7 ARR

Я испытываю затруднения настроить обратное исходящее перенаправление URL прокси в IIS 7 с ARR. Домен имеет 2 входящих URL, переписывает, и 1 исходящий URL переписывают. Входящие хорошо работают, и я не видел проблем с ними.

Однако исходящее перенаправление, кажется, разрушает пул приложений каждый раз, когда это включено. И это будет продолжать отказывать, пока я не отключу исходящее правило. Я думаю, что это мог бы быть некоторый цикл в моих перенаправлениях, но я не уверен. Я не слишком знаком с regex сам, и я не смог найти много от поиска онлайн.

Вот 2 входящих перенаправления, которые работают:

<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>

И вот исходящее правило, которое заставляет пул приложений отказывать, когда это включено:

<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>

Любая справка очень ценится.

1
задан 7 September 2012 в 21:20
1 ответ

Вероятно, вам потребуется установить rewriteBeforeCache в значение false для правил исходящего трафика

Paul

1
ответ дан 4 December 2019 в 00:59

Теги

Похожие вопросы