nginx HTTP/2模块是否支持Server Push?

Mer*_* C. 15 ssl nginx server-push http2

我打算将我的nginx升级到支持HTTP/2的1.9.6.

有nginx实现HTTP/2服务器推送吗?

参考:https: //ma.ttias.be/service-side-push-http2-nghttp2/

Dan*_*erg 19

是的,自2018年2月20日发布的1.13.9版以来,Nginx支持HTTP/2服务器推送.

Nginx团队在最初的1.9.5博客文章中指出,当时它不受支持.


Pat*_*ins 14

编辑:

自2018年2月20日发布的v1.13.9起,Nginx支持HTTP/2服务器推送.

老答案:

截至2017年3月(v1.11),Nginx不支持HTTP/2服务器推送.

nginx的Owen Garrett总结了如下原因:

  • 它是http/2的非必要和可选部分

  • 如果客户端已经缓存了资源,那么通过将其推送到它们,您可能会不必要地浪费带宽.

  • 服务器推送规范可能在未来发生变化.

  • 链接头作为提示很有用,但Web开发人员的使用率很低.

  • 服务器推送已作为SPDY的一部分提供,并未被许多Web开发人员使用.

在这里阅读他的原始评论.此准确描述了服务器提示与服务器推送的原理和配置.

就个人而言,这令我失望,因为我认为这对于愿意投入时间来优化页面速度的Web开发人员来说是一个很有价值的功能.我也知道像Cloudflare这样的大型CDN已经在nginx中实现了自己的版本来优化页面下载.

  • 我喜欢Owen所说的"网络开发人员的使用率很低" - 这不是_因为Nginx不支持它吗?! (8认同)