URL IIS перезаписать на Jetty - исходящий URL не изменяется - PullRequest
0 голосов
/ 26 сентября 2019

Сервер IIS работает и обслуживает запросы через порт 443, все работает нормально, и я могу попасть на целевую страницу IIS.У меня также есть веб-сервер Jetty, работающий на той же машине через порт 8443, для тех, кто знает, что сервер Jetty является частью установки Niagara4.Доменное имя www.domain.com в настоящее время настроено с рабочей записью для отправки пользователей на сервер.

На сервере есть «приложение» (в ISS) с именем niagara, и установлены все приведенные ниже правилав разделе «Перезапись URL» этого приложения.

Созданное мной правило перенаправления входящего URL-адреса работает нормально, я отправляюсь на веб-сервер Jetty, если набираю действительный URL-адрес.

<remove name="ReverseProxyInboundRule1" />
    <rule name="ReverseProxyInboundRule1" stopProcessing="true">
        <match url="(.*)$" />
        <conditions>
            <add input="{CACHE_URL}" pattern="^(https?)://" />
        </conditions>
        <serverVariables />
        <action type="Rewrite" url="{C:1}://localhost:8443/{R:1}" />
    </rule>

При наборе www.domain.com/niagara/login происходит перезапись на localhost:8443/login, и страница загружается в моем браузере.

Проблема заключается в том, что если я просто наберу www.domain.com/niagara, то ответ от сервера скажет моему браузерузагрузить www.domain.com/ord вместо www.domain.com/niagara/ord.На локальном компьютере, набрав localhost:8443, перенаправляет на localhost:8443/ord, а затем перенаправляет на localhost:8443/prelogin.

. У меня установлено нижеприведенное правило для исходящих сообщений, которое из того, что я могу сказать , должно * 1023.* переписать любые URL-адреса в ответе (ответах) с localhost:8080 до www.domain.com/niagara.то есть.серверы (порт 8443) с перенаправлением на localhost:8443/login должны получить доступ к моему браузеру в качестве перенаправления на www.domain.com/niagara/login.

<outboundRules>
    <remove name="ReverseProxyOutboundRule1" />
    <rule name="ReverseProxyOutboundRule1" preCondition="ResponseIsHtml1" stopProcessing="true">
        <match filterByTags="A, Form, Img" pattern="localhost:8080(.*)" />
        <conditions>
        </conditions>
    <action type="Rewrite" value="www.domain.com/niagara{R:1}" />
</rule>

Может кто-нибудь определить, что не так с моими правилами?Я неправильно понимаю, что должно делать исходящее правило?

...