【问题标题】:How to past together redirect 301 rewrite iis-8.5?怎么过去一起redirect 301 rewrite iis-8.5?
【发布时间】:2018-05-22 17:59:34
【问题描述】:

我遇到了一个问题。有一个主要域名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>

【问题讨论】:

    标签: c# asp.net-mvc razor url-rewriting iis-8.5


    【解决方案1】:

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

    <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}"

    【讨论】:

      猜你喜欢
      • 2023-03-10
      • 2011-12-16
      • 1970-01-01
      • 2012-03-20
      • 2012-02-10
      • 1970-01-01
      • 1970-01-01
      • 2015-07-19
      • 2018-07-30
      相关资源
      最近更新 更多