繁体   English   中英

如何一起过去重定向301重写IIS-8.5?

[英]How to past together redirect 301 rewrite iis-8.5?

我遇到了一个问题。 有一个主要的域名https://example.com,我从http重定向到https。 一切正常,但是有一个问题,当我尝试在url地址请求行www.example.com/exam/exam中打印时,我被重定向到maim页面,而在地址请求行中,我看到以下地址:https / /example.com和其他请求将被删除。但是,如果我在地址栏中输入https://example.com/exam/exam ,则一切正常。 我需要您的帮助并就如何改善重写以及代码中的错误提出建议。

<rule name="Redirect to HTTPS" enabled="false" patternSyntax="Wildcard" stopProcessing="true">
                <match url="*" />
                <conditions>
                    <add input="{HTTPS}" pattern="^ON$" />
                    <add input="{HTTP_HOST}" pattern="^([\d\w\.]+)" />
                </conditions>
                <action type="Redirect" url="https://{C:1}/{REQUEST_URI}" />
            </rule>
            <rule name="RedirectDoubleHTTPS" enabled="true" patternSyntax="Wildcard" stopProcessing="true">
                <match url="*" />
                <conditions>
                    <add input="{HTTPS}" pattern="off" />
                </conditions>
                <action type="Redirect" url="https://example.com" />
            </rule>

第二条规则中的问题。 应该是这样的:

<rule name="RedirectDoubleHTTPS" enabled="true" patternSyntax="Wildcard" stopProcessing="true">
    <match url="*" />
    <conditions>
        <add input="{HTTPS}" pattern="off" />
    </conditions>
    <action type="Redirect" url="https://example.com{REQUEST_URI}" />
</rule>

另外,您的第一条规则有较小的修正。 而是https://{C:1}/{REQUEST_URI}"应该是https://{C:1}{REQUEST_URI}"

暂无
暂无

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

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