httpd2.4在CentOS 6 上编译安装

httpd-2.4 新特性:

1、MPM支持运行为DSO机制,以模块形式按需加载

2、Event MPM生产环境可用

3、支持异步读写机制

4、支持每模块每目录的日志级别定义

5、每请求相关专用配置

6、增强版表达式分析器

7、毫秒级连接时长

8、基于FQDN的虚拟机不在需要NameVirtualHost指令

9、新指令,AllowOverrideList

10、支持用户自定义变量使用

11、更低的内存消耗

httpd-2.4 新模块:

    1、mod_proxy_fcgi   支持php  fastCGI工作模式

2、mod_proxy_scgi  代理时支持不同的协议功能,如Python

3、mod_remoteip    基于IP访问控制机制被改动 (allow from、deny from 被废弃)

CentOS 6安装httpd-2.4说明:

httpd-2.4依赖于较新版本的apr-1.4以上版本(apache portable runtime)和apr-util-1.4以上版本。而CentOS 6仅提供apr-1.3 ,apr-util-1.3版本。因此CentOS 6需要编译安装httpd-2.4及其依赖的apr-1.4和apr-util-1.4。

httpd-2.4编译安装步骤:

1、首先确保本机已安装的httpd-2.2服务停掉,如果没安装过那就更好了。

~]#service httpd stop
~]#chkconfif httpd off

2、构建编译安装环境:必须安装Development Tools,Server Platform Development、开发程序包pcre-devel

~]#yum groupinstall "Development Tools" "Server Platform Development"
~]#yum -y install pcre-devel  
 说明:yum源的配置这里就不介绍了,读者可以根据自己的情况进行安装。

3、编译安装apr-1.4以上(我用的是par-1.5版本做测试),获取到apr-1.4以上程序包。解压后进入apr-1.5目录,进行编译安装:

~]# cd ~/apr-1.5.0
~]# ./configure  --prefix=/usr/local/apr   #环境检查
       --prefidx 指定编译安装的路径
~]# make && make install    #编译,成功后将文件复制到/usr/local/apr中

4、编译安装apr-util-1.5

~]# cd ~/apr-util-1.5.3
# ./configure – prefix=/usr/local/apr-util -–with-apr=/usr/local/apr   #环境检查
       --prefidx 指定编译安装的路径
       --with-apr 指定所依赖的包
~]# make && make install    #编译,成功后将文件复制到/usr/local/apr-util中

5、编译安装及环境配置

5.1编译安装

~]#useradd -r apache    #创建名为apache的用户,默认创建同名的用户组
~]# cd ~/httpd-2.4.9 
~]# ./configure --prefix=/usr/local/apache24 --sysconf=/etc/httpd24 --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-modules=most–enable-mpms-shared=all > --with-mpm=prefork
    --sysconf                   :将其配置文创建在/etc/httpd24
    --enable-so 
    --enable-ssl
    --enable-cgi
    --enable-rewrite            :支持URL重写
    --enable-mpms-shared=all    :表示把三个模块全部编译出来。
    --with-mpm                  :设置默认的mpm
    --with-zlib                 :依赖于zlib 可供压缩库
    --with-pcre                 :支持于扩展正则表达式   不指明(=) 则到默认位置去
    注:--with/--without 支持或不支持哪些依赖包   
        --enable/--disable 启用或禁用哪些特性
 ~]# make && make install    #编译,成功后将文件复制到/usr/local/apache24中

编译安装至此完毕,安装后的文件都有哪些呢?

~]# cd /usr/local/apache24
~]# ls
  bin  build  cgi-bin  conf  error  htdocs  icons  include  logs  man  manual  modules  
  bin : apache可执行的二进制文件
  include :报文首部
  icons:资源存放位置
  conf:配置文件
  build:安装过程中产生的文件
    ~]# cat /usr/local/apache24/build/config.nice    编译安装时的./configure 的命令
        "./configure"         "--prefix=/usr/local/apache24"        "--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-modules=most"         "--enable-mpms-shared=all"        "--with-mpm=prefork"         "--sysconf=/etc/httpd24"\

此时启动服务必须到/usr/local/apache24/bin/目录中执行apachectl命令管理httpd进程。但如果需要httpd能够与其他服务一样正常启动,需要进行如下配置:

5.2环境配置

设置 全局环境变量

 ~]#vim/etc/profile.d/httpd.sh
    echoPATH=/user/local/apache24/bin:$PATH

导出头文件

~]# ln -sv /usr/local/apache24/include /usr/include/httpd

`/usr/include/httpd/include‘ -> `/usr/local/apache24/include‘

加载库文件

~]# ldconfig -v   # 重新加载库文件

~]# ldconfig -p  #已加载所有库文件路径

服务管理设置

~]#cp/etc/rc.d/init.d/httpd /etc/rc.d/init.d/httpd24
~]#vim/etc/rc.d/init.d/httpd24
    apachectl=/usr/sbin/apachectl
    httpd=${HTTPD-/usr/local/apache24/bin/httpd}  此目录需要更改
    prog=httpd
    pidfile=${PIDFILE-/usr/local/apache24/logs/httpd.pid}
    lockfile=${LOCKFILE-/var/lock/subsys/httpd24}

将其加入到开机启动中

~]#chkconfig –addhttpd24 
~]#chkconfig–list httpd24

启动服务,httpd可以使用了

~]# service httpd start

 

时间: 2024-08-08 05:38:31

httpd2.4在CentOS 6 上编译安装的相关文章

CentOS 6上编译安装AMP详解

在CentOS 6上编译安装AMP     A:Apache(httpd)     M:MySQL or MariaDB     P:php 目录: 一.准备工作 二.编译安装Apache(httpd) 三.编译安装MariaDB 四.编译安装PHP 编译安装AMP的优点: 根据生产环境灵活定制程序 优化编译参数,提高性能 解决不必要的软件依赖 一.准备工作 1.需要的软件包及版本号: httpd-2.4.27(apr-1.5.2+ apr-util-1.5.4) + MariaDB-5.5.5

CentOS 7上编译安装 apache 2.4.25

在CentOS 7上编译安装 apache 2.4.25 源码包,并启动此服务. 配置环境 Systemctl disable firewalld Systemctl stop firewalld /etc/selinux/config 关闭selinux Sed –i 's/SELINUX=enforcing/SELINUX=disable/' /etc/selinux/config 重启生效(getenforce查看是否生效) yum install gcc apr-devel apr-ut

在CentOS 7上编译安装lamp

1.编译安装httpd-2.4.10 (1)首先安装"DevelopmentTools"和"Server Platform Development" ~]# yum groupinstall -y "Development Tools" "ServerPlatform Development" (2)安装增强版正则表达式分析器pcre-devel,以及openssl-devel,apr-devel,apr-util-devel

CentOS 7 上编译安装MySQL 5.6.23

1.下载源码 wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.23.tar.gz 2.解压 tar zxvf mysql-5.6.23.tar.gz 3.安装必要的包 sudo yum install cmake gcc-c++ ncurses-devel perl-Data-Dumper 4.进入mysql源码目录,生成makefile cmake . 5.编译 make 6.安装 make install mysql将会

【apache http server安装】CentOS上编译安装Aapche Http Server详细过程

下载apache httpd # wget http://mirrors.cnnic.cn/apache//httpd/httpd-2.4.10.tar.gz 2. 解压 apache httpd # tar xzvf httpd-2.4.10.tar.gz 编译apache httpd [[email protected]]# ./configure checkingfor chosen layout... Apache checkingfor working mkdir -p... yes

CentOS 6.5 编译安装httpd2.4安装

CentOS 6.5 编译安装 包下载地址:http://pan.baidu.com/s/1miHrZdQ 密码:p6ny 由于httpd依赖于apr-1.4,apr-util-1.4,所以得安装1.4及以上版本. 首先安装apr和apr-util tar xf apr-1.5.0.tar.bz2 ./configure --prefix=/usr/local/apr make && make install tar xf apr-util-1.5.2.tar.bz2 ./configur

在win7系统上,使用3台CentOS 6, (编译安装http2.4、php、mysql)

实验要求:搭建lamp (1) 三者分离于三台主机: (2) 一个虚拟主机用于提供phpMyAdmin:另一个虚拟主机用于提供wordpress: (3) xcache (4) mpm为worker机制: 物理机使用win7系统,在VMware虚拟机中准备了3台centos6.7的linux系统: 其中IP地址设计: web服务器地址为:192.168.255.60 php服务器地址为:192.168.255.61 mysql数据库服务器地址为:192.168.255.62 分别在每台服务器上编

CentOS上编译安装OpenCV-2.3.1与ffmpeg-2.1.2

已测试环境: CentOS 6.3 32bit CentOS 6.5 64bit 曾经在CentOS 6.3 32bit安装过OpenCV,参见CentOS 6.3中安装OpenCV2.3.1,如今换了64bit系统,大刀阔斧,重新来一遍. 检查并安装相关程序,确保gtk安装成功,否则无法显示图片 yum install gcc-c++ # g++编译 yum install gtk-devel # 反正是gtk神马的,不一定就是gtk-devel,可以使用*gtk-devel*匹配 yum i

在centos6.5上编译安装httpd-2.4

httpd-2.4的新特性: 1) MPM支持在运行时装载; --enalbe-mpm-shared=all --with-mpm={prefork|worker|event} 2) 支持event mpm 3) 异步读写 4) 在每模块及每目录分别使用不同的日志级别 5) 每请求的配置: <If>,<Elseif> 6) 增强版的表达式分析器 7) 毫秒级的keep alive的timeout 8) 基于FQDN的虚拟主机不再需要NameVirtualHost指令; 9) 支持用