2

我们希望将所有传入请求重定向到https://www.domain.com

我们已经尝试了数十个来自网络的代码片段,但没有一个涵盖上面的所有示例。

任何人都可以为 IIS 提供适当的 web.config 文件吗?

4

2 回答 2

3

我遇到了同样的问题。这条规则对我有用。

    <rewrite>
        <rules>
            <clear />
            <rule name="Redirect non-www OR non-https to https://www">
                <match url=".*" />
                <conditions logicalGrouping="MatchAny">
                    <add input="{HTTP_HOST}" pattern="^domain.com$" />
                    <add input="{HTTPS}" pattern="off" />
                </conditions>
                <action type="Redirect" url="https://www.domain.com/{R:0}" redirectType="Permanent"/>
            </rule>
        </rules>
    </rewrite>
于 2015-03-18T05:19:58.067 回答
1

最好的方法是通过您的 DNS 记录 + 一些 IIS 配置。

  • 添加将 domain.com 重定向到 www.domain.com 的 CName
  • 在 IIS 中,创建一个“假”网站并编辑其绑定以处理http://www.domain.com
  • 在这个“假”网站(或通过 UI)的 web.config 中配置 HTTP 重定向,以将来自主机名 www.domain.com 的请求重定向到https://www.domain.com $S$Q ($ S 和 $Q 允许您在重定向后保留参数,请参阅链接了解更多信息)
  • 最后,删除您网站的 HTTP 绑定(仅在此网站上使用 https 绑定)。
于 2013-09-27T13:14:40.267 回答