站点运营

站点运营:HTTPS 与证书自查,别让过期证书和混合内容吓退访客

HTTPS 早已是站点的基础配置,但证书到期、域名覆盖不全、页面残留 http 资源、跳转链过长等问题依然常见。本文从证书有效期、混合内容、协议一致性到 HSTS 配置,整理了一份可执行的自查清单,帮助运营者把这类基础问题纳入固定巡检。

站点运营

站点运营:HTTPS 与证书自查,别让过期证书和混合内容吓退访客

现在大多数站点都已经是 HTTPS,但「装了证书」和「一直正常」是两件事。证书有有效期,页面里可能还残留 http 资源,跳转链可能绕好几个弯,负载均衡和 CDN 上可能各自挂着一份证书。这些问题平时不显山露水,一旦到期或配置漂移,访客看到的就是一整页安全警告。

证书本身:有效期、覆盖范围和证书链

证书到期是最常见的翻车原因,尤其是自动续期看起来配好了、其实早就静默失败的情况。

  • 有效期:确认剩余天数,别等到最后几天才发现。
  • 覆盖范围:一张证书里包含哪些域名。主域名签了,www 未必签;静态资源域名、接口域名、移动端域名容易被漏掉。
  • 证书链:中间证书是否完整。有些浏览器会自己补齐,有些客户端不会,表现就是「某些设备打不开」。
  • 多份证书:CDN 上的证书往往是单独申请、单独续期的,源站更新了不代表边缘节点也更新了。

别只看配置,要看执行结果

定时任务写了不等于跑成功。建议定期检查最近一次签发时间,并设置至少提前 30 天的到期提醒。如果站点有多台服务器或用 CDN,逐台、逐节点确认,而不是抽查一台就当作全站正常。

混合内容:页面里还藏着 http 资源

地址栏是 https,页面却提示「不完全安全」,通常是因为某些资源仍通过 http 加载。常见位置包括:

  • 老文章里直接写的 http 图片地址
  • CSS 里的 background-image
  • iframe 嵌入的第三方页面、视频播放器
  • 脚本动态拼接的接口地址
  • 字体文件、统计代码

打开开发者工具的 Console 和 Security 面板,把几类代表页面各看一遍,混合内容警告会直接列出来。修复时优先使用相对路径或 https 绝对地址,避免下次换域名又要全站再改一遍。

跳转链与协议一致性

http 到 https 最好一步到位。常见问题是:http 跳到 http 加 www,再跳到 https 加 www,最后再去掉尾斜杠。虽然最终能到达,但每次跳转都要多一次请求,也更容易在某个环节断掉。

内链也要统一

站内链接如果还写着 http 绝对地址,等于让访客和蜘蛛多绕一圈。检查正文、导航、页脚、站点地图里的链接协议是否一致,尤其是早期发布的内容。

HSTS 与配置漂移

HSTS 能让浏览器记住「只走 https」,但要谨慎开启。建议先用较短的 max-age 验证,确认全站都支持 https 后再逐步加长。如果站内还有尚未改造的 http 子域,贸然加上 includeSubDomains 会直接把它们锁死,访问时连跳过提示的机会都没有。

一份可执行的自查清单

  1. 列出所有对外提供服务的域名:主域、www、移动端、静态资源、接口、CDN。
  2. 逐一检查证书有效期、覆盖域名和证书链完整性。
  3. 确认自动续期任务真的执行过,查看最近签发时间和执行日志。
  4. 配置到期提醒,至少提前 30 天,并明确接收人。
  5. 打开首页、栏目页、详情页等代表页面,检查 Console 有无混合内容警告。
  6. 搜索站内是否还有 http 绝对地址的内链和资源引用。
  7. 手动输入 http 地址,确认跳转到最终地址只用一跳。
  8. 检查 HSTS 配置是否与当前的改造进度匹配。
  9. 多台服务器或多 CDN 节点,逐台核对证书版本是否一致。
证书和协议属于「不出问题就没人想起」的基础项,但一旦出问题,影响的是整站所有页面。把它放进固定的巡检周期,比如季度一次,或者在证书续期前后各确认一遍,成本很低,收益很实在。

这些检查花不了多少时间,但能避免某天早上打开站点,发现访客看到的是一页红色警告。