经过一些研究,我找不到答案:如何将Apache/httpd更新为最新版本,以便在我的VPS上使用HTTP/2协议。我正在使用基于7的PHP7 &我的服务器。
没有包更新的CentOS默认回购。
[root@vps270238 ~]# httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built: Nov 19 2015 21:43:13我真的很想保留我的实际设置和虚拟主机。
发布于 2016-05-05 07:09:07
您需要Apache2.4.18或更高版本才能启用HTTP/2,但有些人建议将Apache2.4.23作为此后mod_http2中的许多更改(稍后将进一步讨论)。这还需要一些第三方软件(nghttp2和openssl的最新版本)。
Centos的默认回复是基于Red的,它优先考虑稳定性,而不是最新的特性。因此,它们在版本中常常落后(尽管它们与安全补丁保持一致--尽管它们将版本号保留在相同的位置)。
此外,mod_http2模块仍有很多变化(如果你看它的发布,几乎每天都是!),尽管在我运行它的几个月中没有任何稳定性问题,但仍然相当先进。
因此,我个人认为在Apache上使用http/2的最佳方法是从源代码编译最新版本。当然,这并非没有风险。首先,您将失去对上面提到的容易更新的安全补丁的保护,因此可能不得不更频繁地进行升级以保持在这些补丁之上(在我看来,这并不是什么坏事)。此外,您应该在安装源代码之前验证它(特别是对于Apache这样的应用程序,它至少在最初作为root用户运行)。所以这不是一个轻率的决定。
说,如果你想继续,从源代码安装并不像听起来那么困难。我在博客上写了一篇关于怎么做的文章并使用Centos。我不使用PHP,所以不确定是否需要任何额外的编译选项。
还请注意,默认情况下,Apache将安装到/usr/local/apache2中。这很好,因为它允许您保留原来的安装(万一需要回滚),但确实意味着您需要将任何配置复制到/usr/local/apache2/conf,停止旧的Apache (包括在任何启动脚本中),并从新位置重新启动新的Apache。
发布于 2016-05-05 04:46:28
快速提示。使用nginx作为反向代理,并从其中启用httpd/2。你将保留你所有的主机和htaccess。
https://serverfault.com/questions/774919
复制相似问题