站点运营

站点运营:HTTPS 證书與混合内容自查,別让安全警告挡住抓取與訪問

HTTPS 證书過期或頁面里混着 HTTP 资源,會让浏览器提示不安全,也可能影响蜘蛛正常抓取。本文從證书有效期、續期提醒、證书鏈、混合内容、跳轉與 HSTS 几個方面,整理一份可执行的自查清單,帮助站点运营者提前發現問题。

站点运营

站点运营:HTTPS 證书與混合内容自查,別让安全警告挡住抓取與訪問

HTTPS 早已不是加分項,而是訪問的基本门槛。但證书過期、證书鏈不完整、頁面里混着 HTTP 资源,仍然经常發生。對用戶来说,浏览器會彈出安全警告;對搜尋引擎蜘蛛来说,抓取可能中断或降級。與其等告警邮件来了再處理,不如把 HTTPS 相關检查放進日常运营清單。

一、先看證书有效期與續期机制

證书過期是最常见也最容易避免的問题。可以按下面几步核對:

  • 確認目前證书的到期時間,不要只看部署当天是否正常。
  • 检查自動續期是否真的生效,很多工具只是申請了證书,没有配置續期後的重载。
  • 如果使用通配符證书或多域名證书,確認所有需要覆盖的域名和子域名都在證书里。
  • 設定到期前 30 天、15 天、7 天的提醒,並安排人工兜底。

有些团队換了服務器或迁了 CDN,證书没有同步過去,舊环境到期後新环境也受影响。續期後记得检查 Web 服務是否重新加载了證书文件,否則磁盘上換了,内存里還是舊的。

二、證书鏈、SNI 與服務器時間

證书本身有效,不代表浏览器就信任。中間證书缺失时,部分客戶端會报错,而另一些客戶端可能正常,問题很难复現。

  • 用在线工具或命令行检查證书鏈是否完整,是否包含中間證书。
  • 確認服務器開啟了 SNI,尤其是同一 IP 上部署多個 HTTPS 站点时。
  • 检查服務器系統時間是否准确。時間偏差過大,證书會被判定為未生效或已過期。
  • 如果用了 CDN 或负载均衡,確認證书是在源站、CDN 還是两邊都部署,避免只更新了一處。

三、混合内容是容易被忽略的坑

頁面主文档走了 HTTPS,但里面引用的图片、脚本、样式、字体、iframe 仍然使用 HTTP,這就是混合内容。浏览器會拦截部分资源,或者把地址栏标记為不安全。

排查时可以從這几個入口入手:

  1. 打開浏览器開發者工具,查看 Console 和 Network 里是否有混合内容警告。
  2. 检查文章正文、模板、组件库中硬编碼的 http:// 連結。
  3. 检查 CSS 里的背景图、字体文件地址,以及 JavaScript 動態拼接的资源地址。
  4. 检查第三方統計、广告、客服、评论组件的加载地址,尽量使用 HTTPS 版本。

批量替換时注意不要誤伤外鏈或已经废弃的地址,替換後最好全站抽查几個典型頁面。

四、跳轉與 HSTS 的設定

HTTP 到 HTTPS 的跳轉建议使用 301,並尽量一步到位,避免 http 跳到 https 再跳 www 的多級跳轉。跳轉鏈越長,蜘蛛和用戶消耗的時間越多。

HSTS 可以让浏览器在一段時間内强制使用 HTTPS,但開啟前要確認全站和所有子域名都能稳定支持 HTTPS。如果暂时做不到,不要急着加 includeSubDomains 或 preload,否則回退會很麻烦。

證书和跳轉属于基础设施,平时没有存在感,一旦出問题就是全站級別。把它們纳入监控,比事後排查更省力。

五、日常自查清單

  • 證书到期前是否有自動續期和人工提醒双重保障。
  • 續期後是否驗證了實际生效的證书序列号或指纹。
  • 證书鏈是否完整,多地訪問是否都能正常握手。
  • 頁面中是否還存在 HTTP 资源引用,尤其是模板和第三方组件。
  • HTTP 到 HTTPS 是否只有一次 301 跳轉,没有多余鏈路。
  • HSTS 是否在確認全站支持後再開啟。

HTTPS 狀態正常,不保證内容一定被收錄,但至少不會因為安全警告或證书错誤,让用戶和蜘蛛在门口就被拦下。定期花十分钟检查,比临时救火划算得多。