站点运营

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

證书和 HTTPS 配置常被当成一次性工作,装好就不再過問。可證书會到期,頁面里可能混進 http 资源,CDN 與源站還各有一張證书。本文梳理證书到期、混合内容、證书鏈完整性和多节点一致性几個自查点,並给出一套可以落實到日常节奏里的检查流程。

站点运营

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

HTTPS 通常被当成一次性配置:装好證书、打開跳轉,之後就很少再看。但證书會到期,頁面會被人加進 http 资源,CDN 和源站可能各有一張證书。這些問题平时没有存在感,一旦触發就是全站級別的訪問異常。

一、證书到期與續期

最基础的動作是確認到期時間,而不是等到浏览器彈出警告才想起。建议记錄每張證书的到期日,並在到期前 30 天、14 天、7 天各设一次提醒。

自動續期失敗的原因,往往不在證书工具本身,而在驗證环节:

  • DNS 驗證:解析记錄被改動、被刪除,或新增的解析覆盖了驗證记錄。
  • 文件驗證:驗證文件放在站点根目錄,被清理脚本或改版顺手删掉。
  • 端口問题:驗證需要走 80 端口,但服務器上做了强制跳轉或防火墙拦截。
  • 多張證书:同一台服務器上跑了多個域名,只给主域名配了續期任務。

續期成功不等于生效成功。續期後最好重新加载一次 Web 服務配置,再用外部工具確認线上實际返回的證书版本已经更新。

二、混合内容:頁面看着正常,浏览器却在报警

混合内容指 HTTPS 頁面里加载了 http 资源,比如图片、样式、脚本、字体或 iframe。桌面浏览器有时會自動升級或者静默拦截,看起来没坏,但加载失敗的部分會直接影响体驗,也容易让蜘蛛抓到的頁面與预期不一致。

排查方法不复杂:

  1. 打開開發者工具的控制台,查看是否有混合内容提示。
  2. 在頁面源碼中搜尋 http 前缀,逐個確認是外鏈文字、注释還是真實资源引用。
  3. 检查 CMS 里儲存的舊文章、舊图片地址,這類歷史内容最容易被漏掉。

除了頁面资源,還要顺手看看内鏈、Sitemap、RSS 里是否残留 http 開头的地址。协议不统一會让同一批頁面出現两個版本,後續統計和维護都麻烦。

三、證书鏈與被忽略的兼容問题

有些證书在桌面浏览器正常,在部分手机、舊设备或某些客戶端上却报错,常见原因是中間證书没有正确配置。只在自己的电脑上测一次,很难發現問题。

可以關注這几点:

  • 證书鏈是否完整,是否把中間證书一並部署。
  • 證书覆盖的域名范围,新增子域或換域名前先確認是否包含在内。
  • 使用 CDN 时,CDN 侧和源站各有一張證书,两者都要纳入检查范围。
  • 多台服務器、多個节点是否都更新到了同一版本。

四、把检查變成固定流程

證书問题很少靠临时反應解决,更适合放進固定的运维节奏里:

  • 每月看一次證书到期時間與續期任務狀態。
  • 每次改版、換服務器、調整 CDN 後,重新走一遍訪問检查。
  • 把證书到期、跳轉異常、混合内容纳入站点监控,出現異常能第一時間知道。
  • 保留一份配置文件與操作记錄,交接时不用重新摸索。
證书和 HTTPS 不直接决定頁面能不能被收錄,但它决定了訪客和蜘蛛能不能顺利、安全地打開你的頁面。把這類平时看不见的环节管好,比事後到處救火省力得多。