问题描述
我有以下网址:
http://localhost:4423/DXR.axd?r=1_84-0iUmm
以及以下 IIS 重写规则:
<rule name="Enforce LowerCase" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll" >
<add input="{URL}" pattern="[A-Z]" ignoreCase="false" />
</conditions>
<action type="Redirect" url="{ToLower:{URL}}" redirectType="Permanent" />
</rule>
如果该规则包含 DXR.axd,我将不适用。你能不能分享一下你的想法。谢谢。
解决方法
HTTP 查询由协议、域、路径和查询字符串组成,您的 url 由 4 个离散元素构成:
- 协议:http://
- 域:本地主机:4423
- 路径:/DXR.axd
- 查询字符串:r=1_84-0iUmm
如果你想匹配任何没有/DXR.axd
的字符串,你只需要像这样设置你的参数:
<match url="^(?!/DXR.axd$).*$" />