建站平台与虚拟主机

Bluehost SSL 证书:开启免费证书、修复 AutoSSL 与强制 HTTPS

作者: · 最后核实

Bluehost 的免费 SSL 是由 AutoSSL 签发和续期的 Let's Encrypt 证书:在网站上打开开关,域名已经指向 Bluehost 的话,通常几分钟就能生效。它不会自动把访客跳转到 HTTPS,这一步要自己加。如果 SSL 卡片显示证书不安全,办法是先看 SSL 日志,修好 DNS 后重新运行 AutoSSL。

菜单名称以 2026 年 11 月的 Bluehost 后台和官方帮助中心为准,状态和提示按官方英文原文列出。域名注册在阿里云、腾讯云的,也按下面的顺序操作。

Bluehost 的证书是怎么来的

Bluehost 用的是 cPanel 的 AutoSSL 加 Let's Encrypt。官方 AutoSSL 文章说 “AutoSSL utilizes trusted Let's Encrypt certificates”,并且 “automatically renews your certificates before they expire.” 开启指南里说开启免费 SSL “may take a few minutes.” 在后台里,免费证书显示为 Basic:“If you see Basic, your site is currently using the Free SSL, Let's Encrypt.”

开启方法分两种情况:

  • WordPress 网站:打开 Websites(My Sites)→ Manage Site → Security,打开“SSL Certificate: Let's Encrypt”开关。
  • 其他网站:打开 Marketplace → SSL Certificate,在“Install SSL On:”里选择域名,点“Enable Free SSL”。

把域名指向 Bluehost

AutoSSL 要通过公网验证域名,所以域名必须解析到你的 Bluehost 服务器。Bluehost 默认的 DNS 服务器是 ns1.bluehost.com 和 ns2.bluehost.com,官方说 DNS 服务器修改 “can take up to 24–48 hours to propagate globally”。如果域名解析留在阿里云、DNSPod 等外部解析商,官方的说法是 “create an A record in your provider's DNS and link the domain to Bluehost to activate the Free SSL”,A 记录指向你主机账户的 IP。www 也要加一条同样的 A 记录,或者 CNAME 指向主域名,两个名字都要能验证。

域名在阿里云或腾讯云注册、解析也放在那里的,在云解析 DNS 或 DNSPod 里把 @ 和 www 的 A 记录改成 Bluehost 主机 IP 即可,主机记录分别填 @ 和 www,解析线路保持默认。改完先别急着点 Run AutoSSL,用下文排查一节的 dig 命令确认公网已经解析到新 IP,否则验证请求还是会打到旧服务器上。

设了 CAA 记录:放行 letsencrypt.org

域名有 CAA 记录 的话,必须允许 Let's Encrypt 签发。Bluehost 帮助中心没有给出 CAA 值,但免费 SSL 来自 Let's Encrypt,按 Let's Encrypt 的文档,要放行的标识是 letsencrypt.org:

example.com.  3600  IN  CAA  0 issue "letsencrypt.org"

把它加在你为其他服务保留的 CAA 记录旁边即可。以后装了别家 CA 的证书,也要把那家加进去。用 CAA 记录检查 确认实际生效的记录;CAA 挡住签发时,AutoSSL 日志里的表现见 CAA 记录阻止签发。

SSL 卡片显示不安全怎么排查

SSL 卡片显示不安全时,先看 SSL 日志找原因,修好 DNS 后在 cPanel 里重新运行 AutoSSL。网站 Security 标签里的 SSL 卡片会显示 “SSL Certificate is secure.” 或 “SSL Certificate is not secure.”,没有有效证书时状态是 Not secure。官方的处理步骤:

  1. 点 SSL 卡片上的竖向省略号,选择 View SSL logs,会进入 cPanel 的 SSL/TLS 概览,AutoSSL 日志里写着域名失败的原因。
  2. 选中域名,点 Run AutoSSL。
  3. 如果这个域名之前被排除在 AutoSSL 之外,先点 + Include during AutoSSL,再点 Run AutoSSL。成功后会提示 “Success: The following domains have had their AutoSSL exclusion removed:”。
  4. 运行成功后,域名会显示 AutoSSL Domain Validated。

如果日志报验证失败,说明域名没有解析到 Bluehost,或者验证请求被拦截了:改正 A 记录或 DNS 服务器,验证期间关掉 CDN 代理,检查 CAA,再运行一次 AutoSSL。先查公网解析结果:

dig +short NS example.com
dig +short A example.com
dig +short A www.example.com
dig +short CAA example.com

cPanel 的 AutoSSL 本身也会定期运行,刚改完 DNS 服务器时,可以等解析生效,不必反复手动运行。反复失败的请求会触发 Let's Encrypt 的频率限制,见 Let's Encrypt 频率限制。

强制 HTTPS

Bluehost 不会自动强制 HTTPS,跳转规则要自己加。官方原文是 “The Free SSL does not automatically enforce HTTPS on your domain or subdomain; it must be activated manually.” 强制 SSL 指南用的是 .htaccess,在 Hosting → File Manager 里编辑(打开 Show Hidden Files 显示隐藏文件):

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

WordPress 网站要把这段放在 WordPress 规则块的上面,并把 设置 → 常规 里的两个地址都改成 https://。更多写法见 HTTP 跳转到 HTTPS。Bluehost 帮助中心没有 HSTS 开关,等全站都能正常走 HTTPS 后,可以按 开启 HSTS 自己加响应头。

处理混合内容

证书生效后页面还引用 http:// 地址,就会出现混合内容。Bluehost 的建议是把站内链接改成 HTTPS 或相对地址。WordPress 上常见的来源有:站点地址设置、文章和页面构建器里存的链接、主题选项,以及主题里写死的资源地址。用数据库搜索替换把 http://example.com 改成 https://example.com,再清一下缓存插件。做 WooCommerce 店铺的,改完重点检查商品图片、支付按钮和结账页,结账页出现“不安全”提示最影响下单。

用 混合内容扫描 扫一下主要页面,浏览器会拦截哪些资源见 混合内容警告。

能不能上传自己买的证书

可以。在 Websites → Manage Site → Security 里,SSL Certificates 卡片的省略号菜单有 Generate CSR、Upload SSL 和 View SSL Logs。可以在这里或用 CSR 生成 生成 CSR,买好证书后上传证书、私钥和 CA 证书链。AutoSSL 不会续期你上传的证书。公开证书 2026 年 3 月 15 日起最长 200 天,2027 年 3 月 15 日起 100 天,2029 年 3 月 15 日起 47 天,上传的证书一年要换好几次,免费的 Let's Encrypt 则会自己续。浏览器提示证书链有问题时,见 安装中间证书。

验证

SSL 卡片显示安全后,主域名和 www 都应返回 Let's Encrypt 签发的证书,HTTP 请求跳转到 HTTPS。从外部检查:

curl ssl.sh/example.com
curl ssl.sh/www.example.com
curl -sI http://example.com | grep -iE '^(HTTP|location)'

网页版 SSL 证书检查 会显示签发者(免费 SSL 是 Let's Encrypt)、包含的域名、证书链和到期日。Let's Encrypt 从 2025 年 6 月 4 日起不再发到期提醒邮件,默认证书 2027 年 2 月 10 日缩短为 64 天,2028 年 2 月 16 日缩短为 45 天,AutoSSL 失败而没人发现时,证书很快就会过期。可以把域名加入 ssl.sh 监控(开发中),从外部盯着。

常见问题

Bluehost 的 SSL 证书是免费的吗?

是的。Bluehost 的免费 SSL 是通过 AutoSSL 签发的 Let's Encrypt 证书,到期前自动续期。Bluehost 也卖付费证书,会单独显示在 Security 区域。

Bluehost 显示 SSL 不安全怎么办?

要么域名还没签到证书,要么 AutoSSL 失败了。点 SSL 卡片的菜单选 View SSL logs,在 cPanel 里对这个域名执行 Run AutoSSL;如果域名被排除了,先点 + Include during AutoSSL。重试之前确认域名解析已经指向 Bluehost。

Bluehost 会自动把 HTTP 跳到 HTTPS 吗?

不会。官方说明免费 SSL 不会自动为域名或子域名强制 HTTPS,需要手动开启。可以在 .htaccess 里加跳转规则;WordPress 网站还要把站点地址改成 https 开头。

Bluehost 要放行哪个 CAA?

免费 SSL 来自 Let's Encrypt,所以域名有 CAA 记录时要放行 letsencrypt.org。没有 CAA 记录就什么都不用加。如果另外装了第三方证书,那家 CA 也要放行。

资料来源

  1. Bluehost Help: AutoSSL management
  2. Bluehost Help: How to activate a free WordPress SSL
  3. Bluehost Help: Nameservers in the Domains tab
  4. Bluehost Help: Websites Security tab
  5. Bluehost Blog: How to force SSL on all pages
  6. Let's Encrypt: Certificate Authority Authorization (CAA)