【发布时间】:2016-08-24 18:05:32
【问题描述】:
是否有命令或服务可以告诉我我的网站是通过 HTTP 还是 HTTP/2 提供服务。
我找到了这个工具:HTTP/2 Test | A simple HTTP/2.0 test tool,但它只告诉我我的网站是否支持 HTTP/2,而不是它是否已经在使用 HTTP/2。
这也是这个 Chrome 扩展程序:HTTP/2 and SPDY indicator,它告诉我 HTTP/2 已经在我的网站上启用,但据我所知,我的 Apache 版本甚至不支持它。
有什么方法可以确定吗?谢谢!
【问题讨论】:
-
mod_http2在 Apache 2.4.17 及更高版本中可用。您必须使用最新的 OpenSSL 1.0.2(更好的是最新的 OpenSSL 1.0.2h 和很快的 1.1.0)。您将获得更多详细信息here。为什么您看到将 Web 服务器更新到最新的 2.4.20 版本时出现问题?您预计您的软件会出现一些兼容性问题吗?您可以使用 IE 开发人员工具或 Chrome 开发人员工具(只需使“协议”列可见),清除缓存(重要!!!)并在网络跟踪中查看 HTTP2 或 h2。你可以先在 cdnjs.com 上测试一下 -
谢谢,@Oleg。我查看了
mod_http2,我想安装它,但我运行的是CentOS,它最新的Apache 预打包版本是2.4.6(就像你说的,它不支持mod_http2)。我认为升级到 2.4.17 的唯一方法是从头开始编译 Apache,但我不确定是否要这样做。我可能只需要等到 CentOS 推出更新。 -
不客气!我不使用 CentOS,但似乎应该真正编译源代码:参见here。大概这很容易。我没有经验。无论如何,HTTP/2 将使您的网站加速大约 30%。此外,您将能够在不合并的情况下使用 JavaScript 模块,因为在 HTTP/2 下加载许多小文件非常快。您可以配置 Web 服务器以加载具有 1 年缓存的最小文件(jQuery 等)。用户通常只会加载一次此类文件。我的意思是 HTTP/2 是我向您推荐的非常重要的功能
-
我完全同意,@Oleg。我也对 HTTP/2 感到非常兴奋,迫不及待地想要开始使用它。从我在网上阅读的内容来看,它似乎比其前身有了实质性的改进。感谢您的链接!也许我会使用链接中的说明成功编译较新的 Apache。 :)
-
这是我关于如何在 centos 上从源代码安装的帖子:tunetheweb.com/performance/http2 如果您有兴趣。