【问题标题】:Infinite Redirect Loop in IIS 7.5IIS 7.5 中的无限重定向循环
【发布时间】:2014-06-17 20:41:58
【问题描述】:

当请求没有网站的“www”时,我正在尝试添加重定向规则“www”。 IE。 http://example.comhttp://www.example.com

规则如下:

<rewrite>
    <rules>
            <rule name="Add www" stopProcessing="true">
            <match url="(.*)" />
            <conditions>
                <add input="{HTTP_HOST}" pattern="example.com" />
            </conditions>
            <action type="Redirect" url="http://www.example.com" />
        </rule>
    </rules>
</rewrite>

一旦我添加了这个规则,网站就会进入无限循环并且它只是出错(页面无法显示错误消息)。服务器是全新的,它可能缺少一些重定向组件(如果有的话)。我确实安装了 URL Rewrite 组件并在其中添加了规则。 有什么建议么? 谢谢。

【问题讨论】:

    标签: iis redirect rewrite iis-7.5


    【解决方案1】:

    您没有选择模式语法,因此您使用默认的正则表达式语法。因此,您的模式匹配 example.com 和 www.example.com 并导致无限循环。试试这个:

    <rewrite>
        <rules>
            <rule name="Add www" patternSyntax="Wildcard" stopProcessing="true">
                <match url="*" />
                <conditions>
                    <add input="{HTTP_HOST}" pattern="example.com" />
                </conditions>
                 <action type="Redirect" url="http://www.example.com/{R:0}" />
            </rule>
        </rules>
    </rewrite>
    

    【讨论】:

    • 嗯..什么也没做。 :(
    • 我添加了参数,但这不应该改变任何东西。在此之前还有其他规则吗?您是否在站点配置中同时具有绑定和 DNS 中的两个条目?
    猜你喜欢
    • 2012-01-01
    • 2017-10-12
    • 2012-01-18
    • 2017-11-07
    • 2014-03-18
    • 1970-01-01
    • 1970-01-01
    • 2016-03-14
    • 1970-01-01
    相关资源
    最近更新 更多