Я пытаюсь настроить обратный прокси, который уже реализован с использованием nginx в Linux. Я использую URL-адрес перенаправления рекламы и ARR. Что я хочу сделать, так это когда кто-то нажимает
www.example.com/product1/
, он должен отправить запрос на
product1.example.com:8443.
, а если кто-то нажмет
www.example.com/product2/
, он должен отправить просьба product2.example.com:8449
и так далее и тому подобное. Проблема, с которой я сталкиваюсь, заключается в том, что когда запрос достигает значения product1.example.com:8443
с использованием www.example.com/product1/
и открывается страница содержимого, всякий раз, когда я пытаюсь получить доступ к содержимому product1.example.com:8443
с использованием www.example.com/product1/
, выдается ошибка 404.0 - Not Found, пожалуйста обратите внимание, что product1.example.com:8443
и product2.example.com:8449
не размещены в IIS. Они находятся на разных виртуальных машинах. Я просто использую обратный прокси IIS для перезаписи URL. Насколько я понимаю, это какой-либо относительный путь или, в этом отношении, абсолютные пути также должны быть переведены в новую структуру URL.
оригинальный веб, файл конфигурации выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="ReverseProxyInboundRule1" stopProcessing="true">
<match url="^product1(.*)" />
<action type="Rewrite" url="http://product1.example.com:8443/{R:1}" />
</rule>
<rule name="Portainer-reverse-proxy" stopProcessing="true">
<match url="^product2(.*)" />
<action type="Rewrite" url="http://product2.example.com:8449/{R:1}" />
</rule>
</rules>
<outboundRules>
<rule name="ReverseProxyOutboundRule1" preCondition="ResponseIsHtml1">
<match filterByTags="A, Form, Img" pattern="^/(.*)" />
<action type="Rewrite" value="/{C:1}/{R:1}" />
<conditions>
<add input="{URL}" pattern="^(product1|product2).*" />
</conditions>
</rule>
<preConditions>
<preCondition name="ResponseIsHtml1">
<add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
</preCondition>
</preConditions>
</outboundRules>
</rewrite>
</system.webServer>
</configuration>