【Apache学习】编译安装httpd2.4 含傻瓜版自动安装脚本

时间:2021-09-10 12:57:55

学习编译安装httpd2.4,考虑到要和httpd2.2共存,所以安装httpd2.4时需要指定安装目录,考虑包之间的依赖关系。


apr-1.5.0.tar.bz2apr-util-1.5.3.tar.bz2(需要apr-1.5.0)
httpd-2.4.9.tar.bz2 (需要pcre-devel、openssl-devel)

目录结构如下

[root@adelababy soft]# pwd/root/soft[root@adelababy soft]# tree.├── apr-1.5.0.tar.bz2├── apr-util-1.5.3.tar.bz2├── httpd-2.4.9.tar.bz2└── httpd24_install.sh0 directories, 4 files

httpd24_install.sh

#!/bin/bashDATE1=`date +%s%N|cut -c1-13`yum install -y gcccd /root/softtar jxf  apr-1.5.0.tar.bz2tar jxf  apr-util-1.5.3.tar.bz2tar jxf  httpd-2.4.9.tar.bz2cd apr-1.5.0./configure --prefix=/usr/local/aprmake && make installcd ..cd apr-util-1.5.3./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/aprmake && make installcd ..yum install -y pcre-develyum install -y openssl-develcd httpd-2.4.9## --sysconfdir=/etc/httpd24  指定配置文件路径## --enable-so  启动模块动态装卸载## --enable-ssl 编译ssl模块 需要预先安装openssl-devel## --enable-cgi 支持cgi机制(能够让静态web服务器能够解析动态请求的一个协议)## --enable-rewrite  支持url重写## --with-zlib  支持数据包压缩## --with-pcre  支持正则表达式 需要预先安装pcre-devel## --with-apr=/usr/local/apr  指明依赖的apr所在目录## --with-apr-util=/usr/local/apr-util/  指明依赖的apr-util所在的目录## --enable-modules=most      启用的模块## --enable-mpms-shared=all   以共享方式编译的模块## --with-mpm=prefork         指明httpd的工作方式为prefork./configure --prefix=/usr/local/httpd24 --sysconfdir=/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=preforkmake && make installDATE2=`date +%s%N|cut -c1-13`echo "Running time:: $((${DATE2}-${DATE1}))"echo "Done!"

Running time:: 209274
Done!

[root@adelababy soft]# ls /usr/local/aprbin  build-1  include  lib[root@adelababy soft]# ls /usr/local/apr-util/bin  include  lib[root@adelababy soft]# ls /usr/local/httpd24/bin  build  cgi-bin  error  htdocs  icons  include  logs  man  manual  modules

启动httpd2.4

将httpd2.2关闭[root@adelababy bin]# service httpd statushttpd (pid  30807) is running...[root@adelababy bin]# service httpd stopStopping httpd:                                                           [  OK  ]

进入httpd2.4的安装目录,启动进程,查看80端口是否启动了。

[root@adelababy bin]# cd /usr/local/httpd24/bin/[root@adelababy bin]# lsab         checkgid   envvars-std   htdbm     httpd       rotatelogsapachectl  dbmmanage  fcgistarter   htdigest  httxt2dbmapxs       envvars    htcacheclean  htpasswd  logresolve[root@adelababy bin]# ./apachectl start[root@adelababy bin]#LISTEN     0      128                                                               [root@adelababy bin]# lsab  apachectl  apxs  checkgid  dbmmanage  envvars  envvars-std  fcgistarter  htcacheclean  htdbm  htdigest  htpasswd  httpd  httxt2dbm  logresolve  rotatelogs[root@adelababy bin]# ./apachectl start[root@adelababy bin]# ss -ntlpState      Recv-Q Send-Q                                                    Local Address:Port                                                      Peer Address:PortLISTEN     0      128                                                                  :::22                                                                  :::*      users:(("sshd",1276,4))LISTEN     0      128                                                                   *:22                                                                   *:*      users:(("sshd",1276,3))LISTEN     0      128                                                           127.0.0.1:631                                                                  *:*      users:(("cupsd",1117,7))LISTEN     0      128                                                                 ::1:631                                                                 :::*      users:(("cupsd",1117,6))LISTEN     0      100                                                                 ::1:25                                                                  :::*      users:(("master",1384,13))LISTEN     0      100                                                           127.0.0.1:25                                                                   *:*      users:(("master",1384,12))LISTEN     0      128                                                                  :::47422                                                               :::*      users:(("rpc.statd",1041,11))LISTEN     0      128                                                                   *:52751                                                                *:*      users:(("rpc.statd",1041,9))LISTEN     0      128                                                                  :::111                                                                 :::*      users:(("rpcbind",1021,11))LISTEN     0      128                                                                   *:111                                                                  *:*      users:(("rpcbind",1021,8))LISTEN     0      128                                                                  :::80                                                                  :::*      users:(("httpd",61535,4),("httpd",61536,4),("httpd",61537,4),("httpd",61538,4),("httpd",61539,4),("httpd",61540,4))[root@adelababy bin]#


Done!



本文出自 “Adela” 博客,谢绝转载!