我有这样的网站结构:
https://example.org/
october-2018/
index.html
css/...
js/...
november-2019/
index.html
css/...
js/...
march-2020/
index.html
css/...
js/...
...
我想创建一个IIS重写规则,该规则将仅重写对裸域URL(https://example.org/)的请求,以服务于november-2019/
目录的内容。我找不到任何示例,而且我对IIS的了解还不足以解决这个问题(如果是Apache或nginx,则对我来说要容易得多...)。
[如果很重要:由于我在公司环境中,因此我认为必须使用的平台上没有应用程序请求路由(ARR)扩展。
您可以使用以下url重写规则:
<rule name="ReverseProxyInboundRule5" stopProcessing="true">
<match url="^$" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Rewrite" url="http://www.sample1.com/november-2019/" logRewrittenUrl="true" />
</rule>
<outboundRules>
<rule name="rule5" preCondition="ResponseIsHtml1" stopProcessing="true">
<match filterByTags="Link, Script" pattern="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="on" />
<add input="{HTTP_HOST}" pattern="www.sample1.com" />
</conditions>
<action type="Rewrite" value="/november-2019{R:1}" />
</rule>
<preConditions>
<preCondition name="ResponseIsHtml1" logicalGrouping="MatchAny">
<add input="{RESPONSE_CONTENT_TYPE}" pattern="text/html" />
</preCondition>
</outboundRules>