站点运营

站点运营: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 配置、迁移域名之後,都要立刻跑一遍上面的清單。把结果顺手记進改動登记,下次出問题时至少有據可查,不用從零猜。

證书和跳轉這類基础項的特点是平时没声音,出事就是全站級別。把它和备份、日誌放在同一優先級上定期看一眼,成本很低,收益是把一整類故障提前掐掉。