Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何在centos 7中启用apache http/2?_Linux_Apache_Http2 - Fatal编程技术网

Linux 如何在centos 7中启用apache http/2?

Linux 如何在centos 7中启用apache http/2?,linux,apache,http2,Linux,Apache,Http2,我已经按照下面的链接在centos-7 apache中启用了http/2。 我的openssl版本: # openssl version OpenSSL 1.1.0f 25 May 2017 安装最新的apr util和apache(httpd-2.4.27)时 以下错误发生在make命令上 在apr util文件夹中: # make make[1]: Entering directory `/usr/local/src/apr-util-1.6.0' /bin/sh /usr/loca

我已经按照下面的链接在centos-7 apache中启用了http/2。

我的openssl版本:

# openssl version
OpenSSL 1.1.0f  25 May 2017
安装最新的apr util和apache(httpd-2.4.27)时 以下错误发生在
make
命令上

在apr util文件夹中:

# make

make[1]: Entering directory `/usr/local/src/apr-util-1.6.0'
/bin/sh /usr/local/apr/build-1/libtool --silent --mode=compile gcc -g -O2 -pthread   -DHAVE_CONFIG_H  -DLINUX -D_REENTRANT -D_GNU_SOURCE   -I/usr/local/src/apr-util-1.6.0/incl
ude -I/usr/local/src/apr-util-1.6.0/include/private  -I/usr/local/apr/include/apr-1    -o xml/apr_xml.lo -c xml/apr_xml.c && touch xml/apr_xml.lo
xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory
 #include <expat.h>
                   ^
compilation terminated.
make[1]: *** [xml/apr_xml.lo] Error 1
make[1]: Leaving directory `/usr/local/src/apr-util-1.6.0'
make: *** [all-recursive] Error 1
#制作
make[1]:输入目录“/usr/local/src/apr-util-1.6.0”
/bin/sh/usr/local/apr/build-1/libtool--silent--mode=compile gcc-g-O2-pthread-DHAVE\u CONFIG\u H-DLINUX-D\u REENTRANT-D\u GNU\u SOURCE-I/usr/local/src/apr-util-1.6.0/incl
ude-I/usr/local/src/apr-util-1.6.0/include/private-I/usr/local/apr/include/apr-1-o xml/apr\u xml.lo-c xml/apr\u xml.c&&touch xml/apr\u xml.lo
xml/apr_xml.c:35:19:致命错误:expat.h:没有这样的文件或目录
#包括
^
编译终止。
make[1]:***[xml/apr_xml.lo]错误1
make[1]:离开目录“/usr/local/src/apr-util-1.6.0”
make:**[all recursive]错误1
在httpd文件夹中:

#make

Making all in srclib
make[1]: Entering directory `/usr/local/src/httpd-2.4.27/srclib'
Making all in apr
make[2]: Entering directory `/usr/local/src/httpd-2.4.27/srclib/apr'
make[3]: Entering directory `/usr/local/src/httpd-2.4.27/srclib/apr'
make[3]: Nothing to be done for `local-all'.
make[3]: Leaving directory `/usr/local/src/httpd-2.4.27/srclib/apr'
make[2]: Leaving directory `/usr/local/src/httpd-2.4.27/srclib/apr'
Making all in apr-util
make[2]: Entering directory `/usr/local/src/httpd-2.4.27/srclib/apr-util'
make[3]: Entering directory `/usr/local/src/httpd-2.4.27/srclib/apr-util'
/bin/sh /usr/local/src/httpd-2.4.27/srclib/apr/libtool --silent --mode=compile gcc -g -O2 -pthread   -DHAVE_CONFIG_H  -DLINUX -D_REENTRANT -D_GNU_SOURCE   -I/usr/local/src/htt
pd-2.4.27/srclib/apr-util/include -I/usr/local/src/httpd-2.4.27/srclib/apr-util/include/private  -I/usr/local/src/httpd-2.4.27/srclib/apr/include    -o xml/apr_xml.lo -c xml/a
pr_xml.c && touch xml/apr_xml.lo
xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory
 #include <expat.h>
                   ^
compilation terminated.
make[3]: *** [xml/apr_xml.lo] Error 1
make[3]: Leaving directory `/usr/local/src/httpd-2.4.27/srclib/apr-util'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/local/src/httpd-2.4.27/srclib/apr-util'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/httpd-2.4.27/srclib'
make: *** [all-recursive] Error 1
#制作
在srclib中生成所有
make[1]:输入目录“/usr/local/src/httpd-2.4.27/srclib”
四月份完成全部任务
make[2]:输入目录“/usr/local/src/httpd-2.4.27/srclib/apr”
make[3]:输入目录“/usr/local/src/httpd-2.4.27/srclib/apr”
make[3]:对“本地所有人”不做任何事情。
make[3]:离开目录“/usr/local/src/httpd-2.4.27/srclib/apr”
make[2]:离开目录“/usr/local/src/httpd-2.4.27/srclib/apr”
全力以赴
make[2]:输入目录“/usr/local/src/httpd-2.4.27/srclib/apr util”
make[3]:输入目录“/usr/local/src/httpd-2.4.27/srclib/apr util”
/bin/sh/usr/local/src/httpd-2.4.27/srclib/apr/libtool--silent--mode=compile gcc-g-O2-pthread-DHAVE_CONFIG_H-DLINUX-D_可重入-D_GNU_源代码-I/usr/local/src/htt
pd-2.4.27/srclib/apr-util/include-I/usr/local/src/httpd-2.4.27/srclib/apr-util/include/private-I/usr/local/src/httpd-2.4.27/srclib/apr/include-o xml/apr_xml.lo-c xml/a
pr_xml.c&&touch xml/apr_xml.lo
xml/apr_xml.c:35:19:致命错误:expat.h:没有这样的文件或目录
#包括
^
编译终止。
make[3]:***[xml/apr_xml.lo]错误1
make[3]:离开目录“/usr/local/src/httpd-2.4.27/srclib/apr util”
生成[2]:***[all recursive]错误1
make[2]:离开目录“/usr/local/src/httpd-2.4.27/srclib/apr util”
生成[1]:***[all recursive]错误1
make[1]:离开目录“/usr/local/src/httpd-2.4.27/srclib”
make:**[all recursive]错误1

@nos是正确的,这需要
yum安装expat-devel
和我已经安装的一些其他依赖项


我现在更新了博客帖子来反映这一点。如果您在这方面有任何其他问题,请随时联系我。

我建议从安装“即用”软件包

或者,您可以从Fedora或CodeIT提供的SRPM重新编译它(与更改默认值和openssl路径相同):


现在可从CentOS 7获得回购,可通过以下方式启用:

cd /etc/yum.repos.d && wget https://repo.codeit.guru/codeit.el`rpm -q --qf "%{VERSION}" $(rpm -q --whatprovides redhat-release)`.repo
如果已经安装了apache,
yum update
将更新apache,它甚至会启用mod_http2
否则,可以重新安装apache

将协议h2 http/1.1作为

重新启动apache,http/2已准备就绪。

运行
yum安装expat-devel
,继续搜索CentOS软件包中包含失败的其他依赖项,然后安装这些依赖项。
cd /etc/yum.repos.d && wget https://repo.codeit.guru/codeit.el`rpm -q --qf "%{VERSION}" $(rpm -q --whatprovides redhat-release)`.repo