chrome 升级 117后可能会导致你的网站无法访问

事情是这样的,团队的某个内网后台系统突然有一些页面报错无法访问,第一反应肯定是 F12,看看为啥不能访问,打开一看确实报错了,有3个文件请求失败,报 ERR_SSL_PROTOCOL_ERROR 错误,一般这个错误就是证书问题,检查证书之后发现证书没啥问题,也没有过期,然后赶紧问问其他同学是否能访问,一通操作之后最终定位出了可复现路径:

chrome桌面端 117 版本可复现,其他浏览器如火狐,safari 均可正常访问

于是开始谷歌、百度+AI一通搜,大概回答都是

  • 系统时间不正确
  • 浏览器缓存问题
  • 防火墙或防病毒软件
  • 证书无效
  • 禁用QUIC协议
  • 清除SSL状态
  • 不匹配的tls协议版本

万变不离其宗,有的看着就不靠谱,结果肯定是都不能解决我们本次遇到的问题。

那么还是从版本入手,既然是chrome的某个版本才出现的问题,肯定是这个版本更新了一些相关功能导致的,于是开始搜寻 chrome 版本更新日志。

找到最终更新日志的过程其实也不是那么容易,这里简单跟大家描述一下最后找到所用的路径:

这个就是最终的 chrome 每个版本的详细更新内容了!喜大普奔!

接下来看看日志里怎么说

打开网站,我们选择 117 版本,然后可以看到有很多更新项,等等,好像有个可疑的改动 Deprecate TLS SHA-1 server signatures

因为我们一开始就怀疑是证书相关的问题,那么这一项大概差不离就是我们要找的了。

这条更新的提供的关键信息就是:

  • Chrome 将删除对在 TLS 握手期间使用 SHA-1 进行服务器签名的签名算法的支持
  • SHA-1 可以通过临时 InsecureHashesInTLSHandshakesEnabled 企业策略暂时重新启用
  • 但是此策略将在 Chrome 123 中移除

赶紧去看一下我们网址的证书

查看证书可以点击网址上的小锁头或者 F12

破案啦!根证书签名算法用的 SHA-1,由于chrome在这个版本起不再支持该签名算法,所以使用该证书的网址在chrome 117 上都报错了。

先不着急同步到大群里,因为谷歌给了临时策略,先来试一下,我们访问 chrome://flags,搜索handshakes 或者 TLS,可以看到 Allow SHA-1 server signatures in *TLS*.这条配置,改为允许,然后重启

Chrome Flag 是实验性功能,其中大部分的 Flag 都是默认被禁用的。要启用这些功能,需要访问 chrome://flags

重启之后再重新打开网页就可以访问了。

但是这个只是一个临时策略,看官方意思是到 123 版本后会把这个策略给移除,所以这个方法治标不治本,而且也确实不安全,所以最好的做法还是通知运维同学升级证书。

总结

至此,该问题我们就顺利解决啦,把相关结论和解决方案同步到大群里后,收获了一波点赞,这里也分享给大家,避免浪费时间再去踩同样的坑。

后续我会持续关注 chrome 的更新动态,有较大影响和变动的也会第一时间在这里和大家分享,可以关注一波啦~

相关推荐
软件聚导航38 分钟前
「聚小软 AI 助手」技术升级:从数据库检索到 RAG 知识库问答
前端·数据库·mysql·微信小程序·小程序·ai编程·rag
恋猫de小郭1 小时前
看懂大模型架构术语,帮助你理解目前常见的大模型开源架构
前端·人工智能·ai编程
yma161 小时前
通过提示词实现GitHub Pages 和 Nginx 双部署竟然这么简单?
前端
可乐鸡翅yeah_1 小时前
hls.js 内存泄漏实战排查,直播 M3U8 长时间播放异常定位方案
开发语言·javascript·python·django·ecmascript·m3u8·m3u8在线
前端 贾公子1 小时前
第09章:上下文与记忆 (2)
java·服务器·前端
可乐鸡翅yeah_1 小时前
第三方接口对接 M3U8 流媒体排坑实战,解决外部服务商流兼容难题
前端·javascript·python·django·html·m3u8·m3u8在线
GoppViper2 小时前
RDF资源描述框架深度解析:语义Web的数据基石与实战逻辑
前端·数据库
郑州光合科技余经理2 小时前
本地生活服务系统:模块边界与结算字段怎么拆
java·开发语言·前端·后端·系统架构·uni-app·php
IT_陈寒2 小时前
Vue的嵌套组件竟然吃掉了我的事件?
前端·人工智能·后端
默_笙2 小时前
🏠 「LLM Notes」:我用 Next.js + Redis 给自己造了个笔记博客
前端·javascript