大多数浏览器都支持HTTP / 2,某些服务器也支持。
例如,Akamai提供了一个HTTP / 2测试页(https://http2.akamai.com/)。当我用Chrome浏览器访问此页面并转到chrome://net-internals/#spdy
该页面时,该页面列出了协议h2-14(HTTP / 2草案14)。但是,当我打开Akamai的页面上的控制台,然后输入window.chrome.loadTimes()
属性wasFetchedViaSpdy
是true
。为什么是这样?Akamai页面是HTTP / 2,不是SPDY,是吗?
我没有得到的另一件事是本教程(https://www.gatherdigital.co.uk/blog/how-to-setup-http-2-support/527)。它说:
“如何设置HTTP / 2支持(nginx,apache,plesk)[...]嗯,不是完全HTTP / 2,它仍然是mod_spdy。”
这是HTTP / 2在SPDY上的“东西”吗?我提出这个问题的原因是我想对哪些页面使用哪种协议进行一些测量。
长话短说:SPDY已死,HTTP / 2永生!
询问“没有SPDY,HTTP / 2是否可能”意味着HTTP / 2在某种程度上取决于SPDY。事实并非如此。相反,HTTP / 2和SPDY非常相似,以至于许多实现都将其现有的SPDY支持破解为HTTP / 2。还有很多人认为HTTP / 2是SPDY,或者对他们的术语有些草率。他们是不同的协议。
SPDY是Google对HTTP / 1.1的非标准(但开放的)扩展,旨在加速网站的加载和交互并消除人们为减少连接数量所做的许多黑客攻击。HTTP / 2从SPDY开始,然后从那里运行以创建与HTTP / 1.1和SPDY都不兼容的新的标准协议。
许多人将SPDY和HTTP / 2视为同一事物,但事实并非如此。HTTP / 2和SPDY之间的标准化过程已发生重大变化,因此SPDY和HTTP / 2不兼容。但是它们真的很接近,因此许多HTTP / 2实现只是被SPDY入侵的实现。
即使不是标准,许多Web服务器和客户端也实现了SPDY。性能提升太好了,无法超越。
现在HTTP / 2已正式启用,SPDY已正式弃用HTTP / 2,并将于2016年作为标准撤消。Web客户端和服务器正在努力进行切换。尽管客户端非常快地采用了HTTP / 2,但是服务器支持似乎滞后。
在撰写本文时,HTTP / 2只是六个星期的标准。给它更多时间。对SPDY的引用将在HTTP / 2实现中徘徊,但是很快就会清除它。Firefox 36.0.4的网络控制台正确地将协议版本报告为HTTP / 2。
至于确定是否使用HTTP / 2,请查看HTTP响应对象,该对象应具有使用的协议。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句