查询字符串多次出现

时间:2012-10-02 21:29:38

标签: iis url-rewriting

我正在使用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

我在这条规则中做错了什么想法?

1 个答案:

答案 0 :(得分:1)

您需要更改{HTTP_HOST}{REQUEST_URI}

{HTTP_HOST}{URL}