Правила перезаписи URL IIS с обратным прокси-сервером - ошибка HTTP 500.52 - PullRequest
1 голос
/ 07 февраля 2020

Мы запускаем IIS 10 на Windows сервере 2019. Мы запускаем EmbedIO на локальном сервере на localhost. В IIS мы создали правила обратного прокси с использованием перезаписи URL. Сайт появляется без проблем при первой загрузке страницы. Если вы нажмете refre sh, браузер отобразит следующую ошибку:

Ошибка HTTP 500.52 - Ошибка модуля перезаписи URL. *

Правила исходящей перезаписи не могут применяться, когда содержимое HTTP-ответа закодировано («gzip»).

Если вы снова нажмете refre sh и страница загрузится нормально. Это происходит снова и снова, когда страница загружается правильно, а затем вы нажимаете refre sh и получаете следующее:

500.52 сообщение об ошибке

Ниже приведена веб-конфигурация файл, который мы используем. Я изменил имя нашего сервера в целях безопасности. Кто-нибудь видит что-то не так с нашим конфигом или может предложить что-нибудь, что я могу изменить в правилах?

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<httpErrors errorMode="Detailed" />
    <rewrite>
        <outboundRules>
            <rule name="ReverseProxyOutboundRule1" preCondition="ResponseIsHtml1">
                <match filterByTags="A, Form, Img" pattern="^http(s)?://localhost:8686/(.*)" />
                <action type="Rewrite" value="http{R:1}://server1.mydomain.com/{R:2}" />
            </rule>
            <preConditions>
                <preCondition name="ResponseIsHtml1">
                    <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
                </preCondition>
               </preConditions>
        </outboundRules>
        <rules>
            <rule name="ReverseProxyInboundRule1" stopProcessing="true">
                <match url="(.*)" />
                <action type="Rewrite" url="http://localhost:8686/{R:1}" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>
 <system.web>
    <customErrors mode="Off" />
    <compilation debug="true" />
</system.web>
</configuration> 

Заранее спасибо,

-mike

1 Ответ

0 голосов
/ 07 февраля 2020

Согласно вашему описанию, я предлагаю вам попробовать отключить динамическое сжатие содержимого c и stati c для прокси-сервера A и внутреннего сервера B.

Подробная информация о том, как отключить и сохранить c сжатие контента, вы можете обратиться к этой статье: https://www.saotn.org/iis-outbound-rules-with-gzip-compression/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...