我在本地 Apache 服务器上安装了 HTTP/2,并在 Ubuntu 上运行。
HTTP/2 正在工作,因为当我在页面上执行 CURL 时,它设法升级协议:
$ /usr/bin/curl -I --http2 http://test.local/public/
/usr/bin/curl: /usr/local/lib/libcurl.so.4: no version information available (required by /usr/bin/curl)
HTTP/1.1 101 Switching Protocols
Upgrade: h2c
Connection: Upgrade
HTTP/2 200
...
我希望 HTTP/2 在通过浏览器提供服务时能够正常工作。
我在这里缺少什么?
我尝试重新启动我的计算机以及 Chromium、Chrome、FireFox 和 Brave,但在 HTTP/2 中没有看到它。我尝试过 WP、Symfony 应用程序和简单的 HTML/CSS 页面。
事实证明,浏览器需要 HTTPS / SSL 才能使 HTTP/2 工作,而 CURL 则不需要。
安装本地证书并通过 HTTPS 提供页面后,我在浏览器中通过 CURL 获得了 HTTP/2。