站点运营

站点运营:HTTPS 證书與混合内容自查,別让過期證书把訪客拦在门外

HTTPS 證书有有效期,也可能因證书鏈不全、混合内容、域名覆盖不足而出現問题。本文给出一份可落地的自查清單,覆盖續期机制、混合内容排查、SAN 覆盖范围、跳轉與 HSTS 設定,帮助站点避免訪客被拦在门外、蜘蛛抓取中断。

站点运营

站点运营:HTTPS 證书與混合内容自查,別让過期證书把訪客拦在门外

HTTPS 證书不像栏目内容那样天天有人盯着,但它一旦出問题,後果往往很直接:訪客看到整頁红色警告,蜘蛛抓取失敗,頁面加载被浏览器中断。證书有有效期,配置又分散在服務器、CDN、反向代理等多處,任何一處漏掉,都可能让整站“看起来打不開”。下面整理一份可以照着做的證书與混合内容自查清單。

證书出問题的三種常见表現

  • 證书已過期:浏览器直接拦截,訪客必须手動点“繼續訪問”,多數人會直接离開。
  • 證书鏈不完整:桌面浏览器可能正常,但部分手机、舊客戶端或抓取程序报错,表現為时好时坏。
  • 混合内容:頁面能以 HTTPS 打開,但里面還引用了 HTTP 的图片、脚本或样式,浏览器會降級提示或直接拦截這些资源。

有效期與續期机制自查

记錄到期時間

把主域名、子域名、CDN 上單獨托管的證书到期日集中记在一處,並設定提前提醒。免費證书通常 90 天一轮,容易在忙碌期被忽略。

自動續期不等于不會失敗

  • 確認續期脚本真的在跑,而不是只在部署那天成功過一次。
  • 检查續期後是否自動重载了 Web 服務,有些环境證书更新了但進程没重新加载,线上仍是舊證书。
  • 域名解析、驗證文件路径、防火墙放行規則變更,都可能让自動驗證失敗,需要留意續期日誌。

混合内容排查

打開浏览器開發者工具的 Console 與 Network 面板,篩選出仍以 http:// 加载的资源。常见来源包括:老文章里硬编碼的图片地址、第三方統計脚本、外鏈字体、模板里寫死的 CDN 域名。

  • 能改协议的優先改成相對协议或直接 https。
  • 對方站点不支持 HTTPS 的资源,考虑下载到本地或替換為站内资源。
  • 資料库里的存量文章,可以用统一替換處理,但要先备份再批量操作。

證书覆盖范围與域名

检查 SAN 列表

確認證书里包含的域名清單,是否覆盖了带 www 與不带 www 两個版本,以及所有還在對外提供服務的子域名。漏掉一個子域,訪問它时就只能报错。

多域名與通配符的選擇

子域較多时,通配符證书省事,但通常只覆盖一級子域,二級子域需要單獨確認。多域名證书則要注意續期时是否把所有域名都带上。

跳轉、HSTS 與端口

  • HTTP 到 HTTPS 的跳轉應统一到 HTTPS,避免出現 https 跳到 http 再跳回来的循环。
  • 開啟 HSTS 前,先確認所有子域都已支持 HTTPS,否則會導致部分子域彻底無法訪問。
  • 检查證书绑定的端口與容器映射是否一致,改過端口後容易出現 443 上挂着別的服務。

建议的巡检节奏

  1. 每月看一次證书到期時間與續期日誌,確認没有临近到期却未續的證书。
  2. 每次發布新版模板或調整 CDN、反代配置後,抽查首頁、栏目頁、詳情頁的混合内容。
  3. 新增子域名或新開服務时,顺手確認它是否在證书覆盖范围内。
  4. 用不同设备與網絡环境各訪問一次,排除只對特定环境报错的證书鏈問题。
證书問题属于“平时没感觉、出事就很集中”的一類故障。把它纳入日常巡检,成本很低,但能避免訪客和抓取程序在门口就被挡住。