如何测试一个网站是否支持HTTP/3?
您在网站上启用了H3,但不确定如何验证吗?
HTTP3或H3是由IETF开发的最新HTTP协议。它仍处于草案阶段,预计很快将得到主流浏览器/客户端的支持。H3基于QUIC传输层网络协议,该协议最初由Google设计。它与前几个版本如H2不同,后者是从SPDY协议派生而来的。
Cloudflare发表了一篇很棒的博文,解释了技术实现。值得一读。
在撰写本文时,很少有服务器端应用程序/ Web服务器/网络设备/ CDN支持H3。而且,你可以猜到-Cloudflare是第一个提供H3的CDN。
让我们谈谈客户端支持。
H3仍处于草案阶段,因此并非所有浏览器都支持H3。此时,您可以使用以下内容进行测试。像往常一样,can I use将是一个用于检查支持的浏览器的参考资料?
Domsignal
Domsignal快速使用cURL连接您的站点,并查看是否支持H3 / QUIC协议的HTTP / 3测试。如果连接成功,则显示广告支持的版本。
或者,您可以使用Geekflare HTTP Protocol API.检查所有您的网站属性的相同内容。如果您有多个主题网站需要报告,这将带来非常需要的速度。
有趣的是,免费套餐是每月尝试3000个API调用的零风险方式。但是,有从每月5美元开始的升级,其中包括具有更高速率的10K API请求的25个请求。
HTTP / 3检查
LightSpeed的一个网络工具。
访问HTTP/3 Check并输入要测试的网址。您将立即获得结果。
Firefox
Firefox Nightly最近宣布了H3的支持。
Firefox Nightly现在提供了早期的HTTP / 3支持供公众测试!
— Daniel Stenberg (@bagder) November 4, 2019
- 启动Firefox Nightly
- 在地址栏中键入
about:config
并按Enter键 - 接受风险并继续
- 搜索
network.http.http3.enabled
,然后单击切换按钮以启用它。
- 重新启动Firefox Nightly并打开开发者工具
- 访问网站并查看“Protocol”列。
Geekflare支持HTTP / 3,您可以看到这一点。
Google Chrome
您预料到了,对吧?
您可以使用Chrome Canary进行测试。
Google Chrome Canary成为第一个(可用的)集成(非常)实验性的#QUIC和HTTP / 3支持的浏览器!
添加标志“-enable-quic -quic-version=h3-23”,然后您应该在开发工具中看到“http/2+quic/99”的显示,这实际上是伪装的http3!pic.twitter.com/5Fhui46h3x
— Robin Marx (@programmingart) September 19, 2019
使用"--enable-quic --quic-version=h3-23"
标志启动Chrome Canary并运行测试。在开发者工具中,您将看不到H3或HTTP / 3作为协议,而是看到“http2+quic/99”。
Geekflare API
需要以编程方式进行测试吗?试试Geekflare HTTP Protocol API.。它不仅支持HTTP / 3,还会打印给定站点是否支持其他协议,如HTTP / 1.1和HTTP / 2。
有趣的是,免费套餐是每月尝试3000个API调用的零风险方式。
cURL
不想离开终端吗?
cURL很棒,最新版本可让您使用--http3
标志进行测试。下载cURL and build it from the source。
curl --http3 https://yoursite.com -I
另一种选择是按如下方式构建cURL客户端。这适用于Linux。
- 安装Rust环境
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- 按照here中所述构建quiche
它可以工作!
结论
我希望这能给你一个关于测试网站是否启用了HTTP/3的想法。如果你是一个网站所有者,那么利用这个最新的协议来提升网站性能。