Chrome HSTS(HTTP Strict Transport Security)

如果你访问 http:// 的网址, 被浏览器强制转换成 https:// 而导致出发安全警告, 无法访问. 可以看看以下的方法.

✅ 什么是 HSTS?

HSTS (HTTP Strict Transport Security) 是一种安全机制,用来强制浏览器只能通过 HTTPS 访问网站,不能通过 HTTP 明文访问。

如果网站开启了 HSTS,浏览器会在一定时间内记住:"只能访问 HTTPS"。

例如,访问过 https://example.com 后,如果开启 HSTS:

• 下次即使输入 http://example.com

• 浏览器也会自动转成 https://example.com


✅ Chrome HSTS 缓存位置

Chrome 会把 HSTS 缓存存储在内部数据库中。

如果某个站点错误配置了 HSTS,可能会出现:

• 网站打不开(因为强制跳转 https)

• 证书失效导致无法访问,甚至无法绕过安全提示


🔧 如何清除 Chrome 中的 HSTS 记录?

⚠️ 重点:清理 HSTS 缓存 不是清除浏览器缓存/历史就能解决的,需要走以下步骤。

方法 1:使用 Chrome 内置工具

  1. 在 Chrome 地址栏输入:
sh 复制代码
chrome://net-internals/#hsts
  1. 找到 Query HSTS/PKP domain
    • 输入你的网站域名,点 "Query"
    • 可以看到是否设置了 HSTS 相关状态
  2. 找到 Delete domain security policies (注意, 删除的是根域名, 否则无效 )
    • 输入你的网站域名,点击 Delete

这样即可清除 HSTS 记录。


方法 2:清空整个网络缓存

访问:

sh 复制代码
chrome://net-internals/#events

点击右上角 "Clear host cache"


❓ 无法访问网站(ERR_CERT_INVALID / ERR_SSL_PROTOCOL_ERROR)

若遇到类似错误:

ERR_CERT_AUTHORITY_INVALID

ERR_SSL_PROTOCOL_ERROR

可能是:

• 域名绑定 HSTS,但证书过期

• 本地保存的 HSTS 状态导致无法继续访问

解决:按照上面 chrome://net-internals/#hsts → Delete domain security policies 清除。


📌 HSTS preload(预加载)注意事项

某些网站会使用:

sh 复制代码
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

加上 preload 就会加入 Chrome 内置 HSTS 列表,即使你没访问过这个网站,Chrome 也会强制 HTTPS。

这种情况 本地删除无效,恢复极困难,需要在 hstspreload.org 申请删除。


简单总结

场景 解决办法
浏览器本地记住 HSTS 导致打不开 chrome://net-internals/#hsts 删除 domain
Chrome 强制 HTTPS 且无法恢复 如果网站在 preload 列表,需要去 hstspreload.org 处理
清除 DNS + HSTS chrome://net-internals/#events → Clear host cache
相关推荐
溪语流沙14 小时前
【每天一个CSS | Day41】开关三连:一套状态机,三种视觉翻译
前端·css·html5·每日一练·按钮
变与不变80614 小时前
css定位布局精讲
前端·css
FRing0314 小时前
JavaScript入门到精通三十三(异常处理、call方法、apply方法、bind方法、防抖、节流)
开发语言·前端·javascript
计算机魔术师15 小时前
OpenAI 砍掉 100 亿融资目标,AI 资本市场的温度计变了
前端
jktantan15 小时前
(二)Vue 3 的 attrs 不是响应式:el-form 扩展属性同步的三种方案
前端·javascript·vue.js·element-plus
前端 贾公子16 小时前
第 5 章:Codex 从可运行程序到可交付工具
java·前端·数据库
用户3600555790016 小时前
Kestrel_VLLM - 26 · 发射空档三步曲:事件计时 → nsys → 判别实验
前端
echome88816 小时前
JavaScript async/await 错误处理:别让 Promise 静默失败
开发语言·前端·javascript·promise
PedroQue9916 小时前
v0.2.0 架构升级:class + reactive 重塑状态管理
前端·uni-app
鶴哥只手遮天16 小时前
Angular 22 源码级深度解析-第 02 章 编译链路总览:从模板字符串到 `ɵɵ` 指令
前端·开源·angular.js