【问题标题】:Redirecting a www site to non-www site using web.config使用 web.config 将 www 站点重定向到非 www 站点
【发布时间】:2017-12-20 21:07:49
【问题描述】:

我对使用 IIS 有点陌生,我正在尝试做的事情之一是将基于 www 的域重定向到基于非 www 的域

原因是我对非基于 www 的域有 ssl 支持,而 www 域显示 ssl 错误

https://example.com 有效

https://www.example.com 抛出 ssl 错误

我使用 web.config 作为网络服务器,但无论更改如何 - 我无法让网站将自身重定向到非 www

我在web.config尝试了两种方法

<rule name="Second_Redirect" stopProcessing="true">
    <match url=".*" />
    <conditions>
        <add input="{HTTPS}" pattern="ON" />
        <add input="{HTTP_HOST}" pattern="www.(.*.)(.*)" ignoreCase="false" />
    </conditions>
    <action type="Redirect" url="https://{C:1}" />
</rule>

还有

 <rule name="Second_Redirect" stopProcessing="true">
        <match url=".*" />
        <conditions>
            <add input="{HTTPS}" pattern="ON" />
            <add input="{HTTP_HOST}" pattern="^(www\.)(.*)$" ignoreCase="false" />
        </conditions>
        <action type="Redirect" url="https://{C:2}" />
    </rule>

两者都不起作用:(

还有什么我可以做的吗?

谢谢

【问题讨论】:

  • 我刚刚检查了第二个选项,它可以在我这边工作。你用了多少条规则?你能用完整的规则更新你的问题吗?

标签: azure ssl iis azure-web-app-service


【解决方案1】:

试试这个重写规则来删除www

<rule name="remove www url part">
          <match url="(.*)" />
          <conditions>
            <add input="{HTTP_HOST}" pattern="^(www\.)(.+)$" />
          </conditions>
          <action type="Redirect" redirectType="Permanent" url="http://{C:2}/{R:1}" />
</rule>  

【讨论】:

    猜你喜欢
    • 2012-04-18
    • 2014-11-26
    • 2020-12-09
    • 2015-06-15
    • 2019-04-27
    • 2022-03-04
    • 2013-04-03
    • 2021-12-24
    • 1970-01-01
    相关资源
    最近更新 更多