我在 SO 上问过这个问题,但这可能是一个更好的论坛?
我刚刚将域名从自定义网站切换到了 shopify 网站。自定义网站使用了 SSL,任何使用 Chrome 访问过该网站的客户很可能在其历史记录中保存了 https。
由于用户尝试访问一个 url,但该网站实际上来自 shopify 的服务器,因此 Chrome 会抛出一个大红色错误,警告用户该网站可能不是他们想要访问的网站。
有没有办法使用 DNS 将所有 https 尝试重定向到 http?或者有其他解决方案可以防止出现此错误?
答案1
不,对于此用例,DNS 除了将名称映射到 IP 地址之外没有其他功能。无法通过 DNS 将 https 重定向到 http。
您应该联系 Shopify 支持,看看他们是否能够为您的网站提供 SSL 支持。
答案2
查看您的提供商是否提供托管 SSL。这样,他们会从你那里获得证书,当你将 a.com 重定向到 b.net 时,你会收到来自 b.net 的回复,但带有与调用域 (a.com) 匹配的证书。我目前正在使用 Zendesk 执行此操作
答案3
DNS 并非为此目的而设计的,但如果您想要相同级别的延迟,则可以使用 Cloudflare 实现。只需添加“SSL 关闭”页面规则即可。
关闭 SSL 的效果如下:“您的访问者和 Cloudflare 之间没有安全连接,Cloudflare 和您的 Web 服务器之间也没有安全连接。这意味着访问者只能通过 HTTP 查看您的网站,任何尝试通过 HTTPS 连接的访问者都将收到 HTTP 301 重定向到您网站的纯 HTTP 版本。”
来源:
更新:虽然这是一个 HTTP 301 重定向,但速度仍然很快。以下是证明:
我正在使用 Cloudflare 页面规则重定向www
到non-www
我的网站。首先,它解析我的域名,然后对域名执行 HTTP 301。non-www
在下图中,您可以看到粉色区域(DNS 时间)在 IP 解析和 HTTP 301 重定向中几乎完全相同。