IIS 规则 "http rewrite" 导致查询字符串重复
IIS rule "http rewrite" causes querystring duplicate
我设置了一个 IIS 规则将 http 流量重定向到 https 流量,所以我使用了 http 重写规则。我原来的 url 包含 1 个查询字符串参数。应用重写后,我的新 https url 包含重复的查询字符串(2 个相等的参数)。
我尝试通过将 appendQueryString 参数设置为 false 来修改规则,但没有成功。
这是我的规则:
<rewrite>
<rules>
<rule name="HTTP To HTTPS" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{HTTP_URL}" appendQueryString="false" redirectType="SeeOther" />
</rule>
</rules>
</rewrite>
感谢 Jalpa 的评论建议我清除缓存就足够了,它起作用了:)
尝试清除浏览器缓存并重试。正如您所解释的那样,我测试了您的规则,它在查询字符串中运行良好并且没有重复。你可以看到图像。
我设置了一个 IIS 规则将 http 流量重定向到 https 流量,所以我使用了 http 重写规则。我原来的 url 包含 1 个查询字符串参数。应用重写后,我的新 https url 包含重复的查询字符串(2 个相等的参数)。
我尝试通过将 appendQueryString 参数设置为 false 来修改规则,但没有成功。
这是我的规则:
<rewrite>
<rules>
<rule name="HTTP To HTTPS" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{HTTP_URL}" appendQueryString="false" redirectType="SeeOther" />
</rule>
</rules>
</rewrite>
感谢 Jalpa 的评论建议我清除缓存就足够了,它起作用了:)
尝试清除浏览器缓存并重试。正如您所解释的那样,我测试了您的规则,它在查询字符串中运行良好并且没有重复。你可以看到图像。