我正在寻找帮助为IIS编写URL重写规则。
我希望规则忽略以下内容 ttp:// localhost:8080 / myapp /somepag.html,并从IIS上运行的其他网站提供服务。
我想对以下内容进行URL重写 TTP://本地主机:8080 /的 theirApp /somepage.html 并将内容提供回浏览器,就像它来自localhost
一样我知道第二位可以完成,因为我们用它来“反向代理”一个Restful web服务。我不知道如果我可以设置“他们的”条件
<rule name="Proxy" stopProcessing="true">
<match url="^theirApp/([0-9]+)/([_0-9a-z-]+)/?$"/>
<action type="Rewrite" url="http://www.theirApp.com/{R:1}" />
<serverVariables>
<set name="HTTP_X_UNPROXIED_URL" value="??????????" />
<set name="HTTP_X_ORIGINAL_ACCEPT_ENCODING" value="{HTTP_ACCEPT_ENCODING}" />
<set name="HTTP_X_ORIGINAL_HOST" value="{HTTP_HOST}" />
<set name="HTTP_ACCEPT_ENCODING" value="" />
</serverVariables>
</rule>
我也试过了:
<rule name="all domains to www.domainB.com/my-folder" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAny">
<add input="{HTTP_HOST}" pattern="^theirApp$" ignoreCase="true" />
</conditions>
<action type="Redirect" url="http://www.theirApp.com/{R:1}" />
</rule>
我想到的R1是他们的应用之后的其余URL
全部谢谢
答案 0 :(得分:0)
伙计,
问题不在于我使用的重写规则,因为我没有在Azure网站上正确配置IIS ARR模块Use Azure as a Reverse Proxy Helped me out.