混合内容检查器
检测在 HTTPS 页面中加载的 http:// 资源。
将网站迁移至HTTPS协议后,仍指向http://...的残留<img>、<script>、<link>或<iframe>标签会破坏绿色锁形图标显示效果;在现代浏览器中,这些标签往往无法完全加载。输入URL后,该检测工具可加载页面并检查所有子资源(图像、样式表、脚本、字体、iframe、视频、音频),同时列出所有通过普通HTTP传输的内容,以便用户在看到“安全性不完全”警告前及时修复这些问题。
扫描工作原理
-
1
输入网址
HTTPS URL。扫描器仅执行一次重定向操作。
-
2
页面已获取
HTML 会针对每个子资源引用进行解析。
-
3
每份参考文献均经过分类处理。
HTTPS、HTTP 或协议相对路径(`//cdn...`)。
-
4
按类型分组的报告
主动内容与被动内容,按严重程度排序。
主动与被动混合内容
浏览器对这两类内容的处理方式不同:
- 主动混合内容(脚本、iframe、样式表、XHR/fetch、工作线程、WebSocket);现代浏览器会直接阻止此类内容。包括:
<script>、<link rel="stylesheet">、<iframe>、fetch()、XMLHttpRequest、importScripts()。 - 被动混合内容(图像、视频、音频海报)。已加载但被标记,锁图标会显示,网址栏也会出现警告提示。包括:
<img>、<audio>、<video>以及表单action的目标文件。
为何这很重要
- **信任。**损坏的锁形图标会向注意到它的用户明确传达“本网站不安全”。
- 功能特性。 阻止活跃内容后,脚本无法运行、样式表无法生效,页面显示异常。
- 搜索引擎优化(SEO):谷歌更青睐采用 HTTPS 协议的网页;HTTPS 协议失效会间接影响网站排名。
- 合规性。 PCI DSS 及众多其他合规框架均要求交易页面必须使用不含混合内容的 HTTPS 协议。
常见来源
| 来源 | 常见修复方法 |
|---|---|
| 通过 HTTP 进行传统 CDN | 将域名切换为 HTTPS CDN |
| 嵌入式 YouTube/Vimeo 旧嵌入代码 | 将嵌入内容更新至当前版本 |
| 广告网络脚本 URL | 使用 HTTPS 版本(已支持多年) |
| 第三方字体、地图 | 将 http://fonts.googleapis.com 替换为 https:// |
| 社交按钮小部件 | 使用当前小部件代码 |
| 用户生成的图像 URL | 保存时重新生成;显示时通过代理加载 |
| 博客文章中的硬编码 URL | 数据库批量查找与替换 |
修复策略
- 基于协议的URL(
//cdn.example.com/a.js):使用当前页面所使用的通信协议进行加载。适用于大多数CDN网络,但已被弃用,建议明确使用https://...。 - 在源代码中重写。 更新模板和内容,使用
https://;使用正则表达式http://(?!localhost)扫描代码库。 - 内容安全策略升级。
Content-Security-Policy: upgrade-insecure-requests指令浏览器自动将 HTTP 资源 URL 重写为 HTTPS,特别适用于无法对每个 URL 进行审计的网站。 <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">的内联等效表达式。- 若上游服务器确实没有HTTPS接口(目前较为罕见),则通过您的HTTPS源服务器提供仅支持HTTP的代理资源。
检查器发现的内容
- 在
<img>、<script>、<link>、<iframe>、<video>、<audio>和<source>中引用的所有外部 URL。 - 表单
action的属性。 - 在
<style>块中引用了url(...)中的内联 CSS 代码。 - 不会扫描经JavaScript注入的资源,这些资源是在运行时添加的,需要浏览器端进行检测(Chrome开发工具中的“问题”面板可识别此类情况)。
常见问题
部分情况下如此。upgrade-insecure-requests CSP头或元标签会指示浏览器自动将HTTP子资源URL重写为HTTPS格式。该机制仅在服务器支持HTTPS时生效;若上游协议仅为HTTP,则重写操作将失败。
不。仅显示静态HTML中引用的资源;在运行时创建<img>元素的脚本不会显示;Chrome开发工具的问题面板可在浏览器内检测到这些情况。
这些标签在HTTPS页面上支持混合内容(继承了HTTPS的安全机制),但在仅使用HTTP的内部工具或存档页面中会失效,且已被弃用。建议使用显式https://标签。
浏览器缓存。可使用强制刷新(Ctrl+Shift+R / Cmd+Shift+R)或在无痕模式窗口中测试以确认修复效果。CSP报告及控制台警告会显示当前状态。
服务器端的获取器会提取该页面以供分析。URL本身仅在请求中存储,不会被额外保存。
相关工具
坏链检查器
粘贴页面 URL,检查其出站链接中的 404 和其他 HTTP 错误,并显示每个链接的状态码。
HTTP安全头检查器
粘贴 HTTP 响应标头,在浏览器本地检查 HSTS、CSP、点击劫持、MIME、referrer 和跨源策略。
XML 站点地图检查器
在浏览器中检查站点地图 XML,发现解析错误、缺少地址、重复 URL 以及常用站点地图字段值问题。
元描述长度检查器
测量元描述的字符数和估算像素宽度,对照编辑参考,并查看桌面端与移动端版式示意。
规范URL验证器
粘贴页面的 HTML 并检查其 rel=canonical 标签:是否存在、是否为有效的绝对 URL、是否与页面 URL 一致。
外部链接提取器
粘贴原始HTML,可选设置基础URL,即可获得代码中所有外部 http/https 链接的干净、去重列表,用于链接审计和SEO审查。
此工具还提供其他语言版本
- Verificador de Conteúdo Misturado [PT]
- Trình kiểm tra nội dung hỗn hợp [VI]
- Vérificateur de contenu mixte [FR]
- فاحص المحتوى المختلط [AR]
- Kontroll av blandat innehåll [SV]
- 혼합 콘텐츠 검사기 [KO]
- เครื่องมือตรวจสอบเนื้อหาผสม [TH]
- Mixed-Content-Prüfer [DE]
- Verificador de Contenido Mixto [ES]
- Mixed Content Checker [ID]
- Controle op gemengde inhoud [NL]
- 混合コンテンツチェッカー [JA]
- Sprawdzanie mieszanej treści [PL]
- Mixed Content Checker [EN]
- Controllore di contenuti misti [IT]
- Проверка смешанного контента [RU]
- Karışık İçerik Denetleyicisi [TR]