站点运营

站点运营:HTTPS 证书与混合内容自查,别让过期证书把蜘蛛挡在门外

证书不直接决定排名,却决定浏览器和搜索蜘蛛能否顺利取到页面。本文梳理证书到期、域名覆盖不全、证书链缺失、混合内容等常见问题,并给出一份可照着执行的自查清单与例行巡检思路,把 HTTPS 变成稳定的基础项而不是定时炸弹。

站点运营

站点运营:HTTPS 证书与混合内容自查,别让过期证书把蜘蛛挡在门外

证书本身不产生排名,但它决定了浏览器和搜索蜘蛛能不能顺利拿到你的页面。HTTPS 出问题往往不是全站打不开那么显眼,而是部分页面、部分资源悄悄失败——访客看到不安全提示,蜘蛛拿到连接错误,抓取机会就这么被消耗掉。

一、证书最容易出问题的几个地方

  • 到期时间:免费证书多为 90 天,付费证书一年或更长。真正麻烦的不是到期本身,而是续期失败后没人发现。
  • 域名覆盖范围:证书只签了根域名,而站点实际靠带 www 的地址访问;或者漏了移动版、静态资源域名。
  • 证书链不完整:服务器只发了站点证书没发中间证书,桌面浏览器可能自动补全,但部分客户端和爬虫会直接报错。
  • 服务器时间:系统时间偏差过大,证书会被判为尚未生效或已经过期。
  • 多节点不一致:多台机器、多个 IP 上只有部分节点装了新证书,流量随机落在旧节点上。

二、混合内容是更隐蔽的坑

页面本身走 HTTPS,但里面还引用着 http 开头的图片、脚本、样式、字体或 iframe。浏览器会在地址栏标记为不安全,脚本类资源通常直接被拦截,图片可能降级显示或替换成占位图,页面看起来还在,功能却缺了一块。

常见来源包括:编辑器里粘贴的外链图片、老模板里遗留的 CDN 地址、第三方统计或客服脚本、内嵌视频 iframe,以及 CSS 里的 @import 和 background-image。

排查方式很简单:打开开发者工具的 Console 与 Network,过滤 http 开头的请求;或者用抓取工具遍历主要模板页,把所有资源域名列出来逐个核对。

三、照着做一遍的自查清单

  1. 用 curl 或 openssl 检查首页、栏目页、资源域名所用证书的主体、签发者与有效期。
  2. 核对 http 到 https 的跳转是否一步到位,避免 http 跳带 www 再跳 https 的两三跳链路。
  3. 检查 HSTS 响应头是否设置、max-age 是否合理,注意这个头一旦设错回退成本很高。
  4. 遍历首页、栏目页、详情页与移动版页面,确认没有混合内容警告。
  5. 确认 sitemap、robots.txt、canonical 与站内链接里写的都是 https 版本。
  6. 检查 CDN 与源站证书是否都在有效期内,回源时是否校验证书。
  7. 设好到期提醒,续期后验证部署是否真正生效,而不是只看续期日志。

四、把巡检变成例行动作

自动化不等于不用管

ACME 类工具能自动续期,但它依赖端口可达、DNS 记录正确、验证路径没被规则挡住。任何一处变动都可能让续期静默失败。建议在到期前十五天和七天各安排一次人工确认,花几分钟看一眼比事后救火划算得多。

变更之后立刻复查

换服务器、切 CDN、调整 Nginx 配置、迁移域名之后,都要立刻跑一遍上面的清单。把结果顺手记进改动登记,下次出问题时至少有据可查,不用从零猜。

证书和跳转这类基础项的特点是平时没声音,出事就是全站级别。把它和备份、日志放在同一优先级上定期看一眼,成本很低,收益是把一整类故障提前掐掉。