我正在使用url重写模块(来自here)。我在web.config中定义了以下规则,以将任何http流量定向到https。
<rewrite>
<rules>
<rule name="https redirect" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="SeeOther" />
</rule>
</rules>
</rewrite>
我有一个问题。我的网址还可能包含查询字符串中的一些加密和编码数据。看起来这个规则是通过多次附加查询参数来更改参数,如下所示。
实际网址
http://www.MySite.com?Data=nBdHuQ6Jt2nHCnh5FG
申请规则后 https://www.MySite.com?Data=nBdHuQ6Jt2nHCnh5FG?Data=nBdHuQ6Jt2nHCnh5FG
我在这条规则中做错了什么想法?
答案 0 :(得分:1)
您需要更改{HTTP_HOST}{REQUEST_URI}
{HTTP_HOST}{URL}