源码编译http2.4.9
本文主要讲解源码编译http2.4.9,并能实现基于CGI、虚拟主机、https等实现网页的访问。 http2.4.9会依赖于更高版本的apr和apr-util,所有需要先对apr和apr-util进行编译
http2.4系列相对于http2.2系列新增的功能有
1) MPM支持在运行时装载
2)支持event
3)异步读写
4)在每模块及每目录上指定日志级别
5)每请求配置
6)增强版的表达式分析器
7)毫秒级的keepalive timeout
8)支持主机名的虚拟主机不在需要NameVirtualHost指令
9)支持使用自定义变量
新增的模块由mod_proxy_fcgi,mod_ratelimit,mod_request,mod_remoteip
对应IP的访问做了修改,不在使用order,allow deny这些机制,而是统一使用require进行
一、环境准备
安装好开发包组和pcre-devel工具,下载最新版的httpd、apr和apr-util,本文下载的都为最新的源码包
[root@wangfeng7399 ~]# yum install -y pcre-devel [root@wangfeng7399 ~]# wget http://apache.fayea.com/apache-mirror//httpd/httpd-2.4.9.tar.bz2 [root@wangfeng7399 ~]# wget http://mirrors.hust.edu.cn/apache//apr/apr-1.5.0.tar.gz [root@wangfeng7399 ~]# wget http://mirrors.hust.edu.cn/apache//apr/apr-util-1.5.3.tar.gz
二、安装apr
[root@wangfeng7399 ~]# tar xf apr-1.5.0.tar.gz [root@wangfeng7399 ~]# cd apr-1.5.0 [root@wangfeng7399 apr-1.5.0]# ./configure --prefix=/usr/local/apr [root@wangfeng7399 apr-1.5.0]# make && make install
三、安装apr-util
[root@wangfeng7399 ~]# tar xf apr-util-1.5.3.tar.gz [root@wangfeng7399 ~]# cd apr-util-1.5.3 [root@wangfeng7399 apr-util-1.5.3]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr [root@wangfeng7399 apr-util-1.5.3]# make && make install
四、编译httpd
[root@wangfeng7399 ~]# tar xf httpd-2.4.9.tar.bz2 [root@wangfeng7399 ~]# cd httpd-2.4.9 [root@wangfeng7399 httpd-2.4.9]# ./configure --prefix=/usr/local/httpd --sysconfdir=/etc/httpd --enable-so --enable--ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modeles=most --enable-mpms-shared=all --with-mpm=event [root@wangfeng7399 httpd-2.4.9]# make && make install
enable-so enable--ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre 启动so、ssl、cgi、rewrite、zlib、pcre等功能
--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util 指定apr和apr-util的地址
--enable-modeles=most 编译常用的模块
--enable-mpms-shared=all --with-mpm=event 编译所有的mpms,并以event作为默认
1、导出头文件
root@wangfeng7399 ~]# ln -sv /usr/local/httpd/include/ /usr/include/httpd
2、导出帮助文件
在/etc/man.conf中添加
MANPATH /usr/local/httpd/man
3.导出二进制文档
[root@wangfeng7399 httpd]# vi /etc/profile.d/http.sh export PATH=/usr/local/httpd/bin:$PATH
测试
本文出自 “IT民工--小枫” 博客,请务必保留此出处http://wangfeng7399.blog.51cto.com/3518031/1379373
原文:http://wangfeng7399.blog.51cto.com/3518031/1379373