杀毒软件 HTTPS 扫描与 Brotli

Lighthouse报告建议开启网页文本压缩

简短版本:如果开启了杀毒软件的 HTTPS 扫描,浏览器开发工具可能无法正确反映压缩后的网页,只需禁用 HTTPS 扫描即可恢复正常。


发现问题

重新开启了博客,有了之前的经验自然想到要开启网页压缩。而首选自然是 Brotli。于是配置了一番,似乎并无异样。

偶然在 Edge 的开发者工具中发现了 Lighthouse 这工具,看起来可以为网页提供优化建议,那就试试吧。

结果令人大吃一惊,报告第一项就是建议开启网页压缩!

Lighthouse报告建议开启网页文本压缩
Lighthouse 报告建议开启网页文本压缩

难道是我的配置错误吗?检查配置似乎并没有问题:

#开启 brotli 压缩
SetOutputFilter BROTLI_COMPRESS
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-brotli

毕竟这可是来自官方文档的配置。

试着检查一下响应头吧,似乎也很正常:

响应头显示了br标志
响应头

很显然有 “br” 标志嘛。

但是从大小却可以看出显示压缩并未生效:

两个值几乎没有差异
从两个值的差异可以快速判断压缩是否生效

等等!这个响应头怎么和文档里提到的不一样呢?不是 Content-Encoding 而是 x-content-encoding-over-network!!!

意识到这一点的我终于找到了突破口。

解决方法

找到了突破口就容易找到答案了,经过搜索,找到了这个帖子

看来杀毒软件的 HTTPS 扫描功能似乎会导致网页压缩不能被正确检测,而我的电脑上正好开启了 ETS 的 HTTPS 扫描功能。

禁用之,一切恢复正常!

关闭杀毒软件HTTPS检测后两个值差异显著
关闭杀毒软件 HTTPS 检测后

疑问

虽然解决了问题,但禁用 HTTPS 扫描毕竟削弱了一层安全性,所以如何权衡在于自己。(由于 HTTPS 扫描会替换证书,其实一直对这个功能感到不太舒服)

另外,虽然 HTTPS 扫描会影响开发工具中的信息显示,但压缩究竟实际发生了吗?换句话说,HTTPS 扫描究竟是否实际影响网络开销,如果不影响,那么对普通用户而言并没有禁用的必要。这个问题还留待探索。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です