繁体   English   中英

IIS重写规则将HTTP重定向到HTTPS导致多个RedirectURL查询字符串

[英]IIS Rewrite Rule Redirect HTTP to HTTPS causes multiple RedirectURL querystring

我们正在使用以下规则将HTTP重定向到HTTPS:

<rewrite>
    <rules>
        <rule name="Redirect 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}" redirectType="SeeOther" />
        </rule>
    </rules>
</rewrite>

这可以正常工作,但是当用户将URL标记为如下所示时:

h t t p://www.mysite.com/myapp/login.aspx?ReturlURL=/someurl

它将它们按预期重定向到HTTPS,但带有2 ReturnURL查询字符串,这将在他们登录时导致404错误:

h t t p s://www.mysite.com/myapp/login.aspx?ReturnURL=/someurl&ReturnURL=/someurl

如何处理这种情况? 提前致谢!

将您的操作更改为:

<action type="Redirect" url="https://{HTTP_HOST}{HTTP_URL}" appendQueryString="false" redirectType="SeeOther" />

请注意appendQueryString="false"属性:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM