直接答案

使用 RedirHub 重定向的域名无需设置 HTTP 到 HTTPS 规则:RedirHub 同时响应 http:// 和 https://,并将两者都发送到你的目标地址。对于你自己托管的网站,请在服务器或 CDN 上添加一条永久(301)规则,将 http:// 重定向到 https:// 上相同的 URL,并将其与你的 www 规则结合起来,这样访客就只需一次跳转。

此示例一目了然
ItemDetails
Goal每个 http:// URL 都会以 301 重定向到 https:// 上相同的 URL
你需要HTTPS 端的有效证书,以及对你的服务器、CDN 或 CMS 设置的访问权限
重定向类型301 Permanent

在使用 RedirHub 重定向的域名上#

无需设置。一旦该域名的 DNS 指向 RedirHub,证书会自动签发,http://old-site.com/page 和 https://old-site.com/page 都会通过一次跳转重定向到你的目标地址。参见 自动 HTTPS。

在你自己的网站上#

先安装证书并检查 https:// 是否可用。然后添加以下规则之一。

Apache (.htaccess)#

apacheRewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Nginx#

nginxserver {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://$host$request_uri;
}

Cloudflare#

在 SSL/TLS 中,打开 Edge Certificates 并启用 Always Use HTTPS。当你的源站拥有有效证书时,将 SSL/TLS 模式设置为 Full (strict);Flexible 模式与源站上的 HTTPS 规则一起使用会导致重定向循环。

WordPress#

在“设置”>“常规”中,将 WordPress 地址和站点地址改为 https://,然后添加上面的服务器规则。仅更改这些地址不会重定向旧的 http:// 链接。

如果你还会重定向 www,请避免出现两次跳转#

如果 http://example.com 先跳转到 https://example.com,然后再跳转到 https://www.example.com,这就是一个重定向链。请将规则写为让 http:// 和非规范主机直接跳转到最终 URL,或者让 RedirHub 处理你要重定向离开的主机;请参见 将非 www 重定向到 www。

结果#

规则生效后的请求(规范主机 www.example.com)
RequestResponseLands on
http://www.example.com/pricing301https://www.example.com/pricing
http://example.com/pricing301https://www.example.com/pricing (one hop)
https://www.example.com/pricing200页面本身

检查你的 HTTPS 重定向 跟踪 http://yourdomain.com,查看每一跳、其状态码以及 HTTPS 是否有效。

打开重定向检查器

常见问题

301。迁移到 HTTPS 是永久性的,而 301 会告诉搜索引擎索引 https:// URL。

是的。RedirHub 会响应每个指向它的域名的 http:// 和 https://,并将两者都重定向到目标地址。

通常,处于 Flexible SSL 模式的 CDN 会用 HTTP 与你的服务器通信,而服务器会重定向到 HTTPS。请使用 Full(strict)模式,或者移除两个 HTTPS 规则中的一个。

相关帮助

查看全部文章