nginx、HTTP/2、零长度文件

nginx、HTTP/2、零长度文件

在 Centos 7.2 更新到 7.9 之后,启用 HTTP/2 的 vhost/site 开始出现异常:随机 js/ccs 文件在浏览器中下载为零长度的空文件,但状态为 200。

我无法使用--http2switch 在 curl 中重现此问题(这似乎与复杂的浏览器密码/策略算法有关),但这可以在多台客户端计算机和浏览器上重现。Nginx 在日志中未报告任何错误。更奇怪的是,body_bytes_sent对于在浏览器端获得零长度文件的浏览器请求,nginx 报告的不是零,并且该长度与应有的长度相同。

我意识到这个问题看起来像是“来自 1 个 karma 的人的无意义的诊断问题”,但这确实是我能得到的所有诊断。到目前为止,对我来说,解决方法是在 nginx 中禁用 HTTP/2。这很令人沮丧,因为据我所知,这是我第一次无法摆脱这种问题。

那么……也许一些社区成员已经看到了类似的东西?

相关内容