站点运营

站点运营:HTTPS 與混合内容自查,別让浏览器给頁面贴上不安全标簽

頁面挂了證书不代表就安全了,残留的 http 资源會让浏览器提示不安全,還會影响脚本、样式和表單的正常加载。本文整理一份 HTTPS 與混合内容自查清單,從頁面源碼、證书配置到常被忽略的错誤頁與邮件模板,帮助站点运营者按優先級把這類問题處理干净。

站点运营

站点运营:HTTPS 與混合内容自查,別让浏览器给頁面贴上不安全标簽

很多站点早就装好了證书,地址栏里也挂着鎖的标志,但只要頁面里還夹着一两個 http:// 開头的资源,浏览器就可能把“安全”改成“不安全”,甚至在部分区块直接拦下加载。對訪客来说,這是信任問题;對搜尋蜘蛛来说,這是抓取和渲染的干扰。下面這份自查清單,适合放進站点例行巡检里,每隔一到两個月跑一遍。

混合内容到底是怎么出現的

混合内容(Mixed Content)指的是:頁面本身通過 HTTPS 加载,但里面引用的部分资源仍然走 HTTP。它通常在這几種场景中悄悄出現:

  • 早期上传的图片、附件,外鏈地址還寫着 http。
  • 模板或插件里的 CSS、JS 使用绝對地址寫死,迁移到 HTTPS 後没有同步替換。
  • 編輯器中粘贴進来的外鏈图片、视频,带着原来的 http 地址。
  • 統計、客服、字体等第三方组件只提供 http 版本,或者代碼是几年前複製来的。

被動型内容(图片、音频、视频)一般會被浏览器自動升級或直接拦截;主動型内容(脚本、样式、iframe、XHR)風險更高,浏览器通常直接阻断,頁面會出現样式错乱、按钮点不動等現象。

頁面层自查:從源碼里找漏網的 http

逐個抽查主要模板

首頁、栏目頁、詳情頁、搜尋结果頁、移動端模板,至少要各抽查一两個真實 URL。把源碼拉出来搜尋 “http://”,注意排除注释和文档連結,也要留意 href、src、srcset、data-* 属性里的地址。

重点看這几類资源

  1. 图片與图标:正文插图、缩略图、favicon、分享用的预览图。
  2. CSS 與 JS:主题文件、合並後的静態包、CDN 上的路径。
  3. 字体與图标库:外鏈字体走 HTTP 时容易被拦,表現為字体忽大忽小或變成方块。
  4. 表單與接口:表單 action、AJAX 請求地址寫成 http,提交时可能被浏览器拒绝。
  5. 内鏈與跳轉:正文里的站内連結、友鏈、跳轉脚本里的目标地址。

證书與协议层自查

  • 有效期與自動續期:临近到期的證书如果續期失敗,會影响整個域名,建议單獨設定到期提醒。
  • 域名覆盖:只簽了主域名、没包含 www 或某個子域名时,訪問對應入口就會报错。
  • 證书鏈完整:部分老设备或某些抓取工具對中間證书缺失比較敏感,可用在线工具核對。
  • 协议與端口:確認 80 端口只做跳轉,不對訪客直接輸出内容,同时检查跳轉是否保留了原始路径與參數。
  • HTTP/2 或 HTTP/3:服務器支持时可開啟,但要確認與現有配置兼容,別為了省開销反而打乱規則。

常被忽略的几個角落

巡检时最容易漏掉的,往往不是主頁面,而是那些“偶尔才被打開”的頁面:错誤頁、搜尋结果頁、用戶中心、打印样式、邮件模板,以及内嵌的小工具頁面。
  • 404 與错誤頁:自定义错誤頁里如果引用了 http 资源,訪客一旦走错路,看到的是一張残缺的頁面。
  • 邮件與推送模板:站外通知里的連結如果還是 http,点击後會多一次跳轉,甚至被客戶端标记。
  • 缓存與 CDN:改了源碼但 CDN 還缓存着舊版本,會让自查结果反复變化,注意刷新缓存後再驗證。
  • 移動端與内嵌頁:不同容器的拦截策略不完全一致,最好在手机浏览器和應用内各看一次。

處理顺序與节奏

  1. 先修主動型内容,也就是脚本、样式、接口,這類资源出問题頁面基本没法正常用。
  2. 再修被動型资源,图片、字体、附件,改成相對协议或直接寫 https。
  3. 最後统一收敛 http 入口到 https,並確認跳轉不是鏈式的。
  4. 改完後重新抓一次源碼,確認没有再出現 http 引用,同时观察抓取日誌中相關頁面的狀態碼變化。

這套動作不需要多高的技術门槛,但贵在定期。把它寫進站点运营的巡检表,和站点地图、重定向、日誌清理一起轮着做,出問题的概率會低很多。