首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ubuntu17.04上的HTTP2不工作

Ubuntu17.04上的HTTP2不工作
EN

Ask Ubuntu用户
提问于 2017-10-15 23:10:16
回答 1查看 460关注 0票数 0

我在我的PC上安装了Ubuntu17.04,用PHP 7安装了Apache来进行一些开发,但是当我尝试在我的Apache上安装HTTP2时,它就不能工作了,因为它不是为运行mpm-prefork的Apache安装的,而且我不能禁用mpm-prefork,因为它被PHP7使用,我有什么想法可以让它工作吗?

谢谢。

EN

回答 1

Ask Ubuntu用户

发布于 2017-10-15 23:21:10

预叉模型对HTTP施加了相当多的限制,即使没有HTTP/2,但是对于HTTP/2,它阻止了使用HTTP/2的许多特性。由于每个请求都发生在一个单独的进程中,并且没有多线程,Apache无法对它们进行复用(在同一个TCP连接上处理多个请求),除非它相当大程度地改变了预叉的工作方式,而它选择了不这样做。因此,HTTP/2支持仅限于每次使用pre叉时的单个请求。

(这在这里有记录)

将PHP与web服务器集成的一种很好的现代方法是使用PHP (PHP的内置FastCGI进程管理器),并让web服务器将PHP请求转发给它,并接收它们的响应。然后,您可以使用多线程web服务器(如Apache )和辅助MPM,也可以使用基于事件的web服务器(比如带有事件MPM的Apache )或nginx (这在HTTP/2方面尤其出色,因为它能够以很少的内存打开数千个连接)。事实上,这可能是在nginx中使用PHP的最常见的方式,而且我以前也看到过在Apache2上使用它是出于安全考虑(例如有不同的PHP应用程序作为单独的用户运行)。支持HTTP/2似乎也是一个不错的理由。

有许多指南来设置web服务器和PHP来使用PHP。

票数 2
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/965235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档