注意:本教程使用干净的 CentOS 7进行安装,如果您已安装其他环境或软件,涉及到内核升级,请您妥善备份,可能导致您已安装的软件不兼容或出现其他问题。
免责声明:本教程仅以个人经验撰写,未必适合所有系统环境。如在使用本教程途中,出现无法挽救的损失(如数据丢失等),本人概不负责。
再次提醒:使用本教程前请妥善备份现有数据!使用本教程前请妥善备份现有数据!使用本教程前请妥善备份现有数据!
如果您使用本教程的方法过程中出现问题,您可留言,我将在能力范围内尽可能协助解决。
本文最终服务器环境配置:
内核版本
3.10.0-693.2.2.el7.x86_64
安装所用的软件
httpd-2.4.28.tar.gz
apr-1.6.2.tar.gz
apr-util-1.6.0.tar.gz
pcre-8.41.tar.gz
下面开始进入教程吧。
一. 升级内核和软件包
[root@kvm ~]# yum -y update
...
Complete!
直到控制台输出Complete!说明升级完成,最好还是重启一下吧
[root@kvm ~]# reboot
二. 安装 apache 2.4.28
先安装一些基本依赖
[root@kvm ~]# yum install -y gcc gcc-c++ openssl-deve lzlib-devel
然后开始安装apr、apr-util、pcre 3个依赖,最后再安装 apache
1. 安装 apr
[root@kvm ~]# wget https://mirror.tuna.tsinghua.edu.cn/apache/apr/apr-1.6.2.tar.gz
[root@kvm ~]# tar zxf apr-1.6.2.tar.gz
[root@kvm ~]# cd apr-1.6.2/
[root@kvm apr-1.6.2]# ./configure --prefix=/usr/local/apr
[root@kvm apr-1.6.2]# make && make install
[root@kvm apr-1.6.2]# cd .. //返回上级目录
2 安装 expat
因为我们使用了 apr 1.6.2 的依赖,所以下面我们必须要用 apr-util 1.6.0 版本,apr-util 1.6.0
不再捆绑安装 expat ,但又需要 expat 的支持,所以我们得手动先安装 expat。不然编译 apache 的时候会报错。
[root@kvm ~]# wget https://sourceforge.net/projects/expat/files/expat/2.2.3/expat-2.2.3.tar.bz2
[root@kvm ~]# tar jxf expat-2.2.3.tar.bz2 //使用minimal安裝的centos请先执行yum install -y bizp2
[root@kvm expat-2.2.3]# cd expat-2.2.3/
[root@kvm expat-2.2.3]# ./configure--prefix=/usr/local/expat
[root@kvm expat-2.2.3]# make && make install
[root@kvm expat-2.2.3]# cd .. //返回上级目录
3 安装 apr-util
[root@kvm ~]# wget https://mirror.tuna.tsinghua.edu.cn/apache/apr/apr-util-1.6.0.tar.gz
[root@kvm ~]# tar zxf apr-util-1.6.0.tar.gz
[root@kvm ~]# cd apr-util-1.6.0/
[root@kvm apr-util-1.6.0]# ./configure --prefix=/usr/local/apr-util--with-apr=/usr/local/apr --with-expat=/usr/local/expat
[root@kvm apr-util-1.6.0]# make && make install
[root@kvm apr-util-1.6.0]# cd .. //返回上级目录
4 安装 pcre
[root@kvm ~]# wget http://sourceforge.mirrorservice.org/p/pc/pcre/pcre/8.41/pcre-8.41.tar.gz
[root@kvm ~]# tar zxf pcre-8.41.tar.gz
[root@kvm pcre2-10.21]# cd pcre-8.41/
[root@kvm pcre2-10.21]# ./configure--prefix=/usr/local/pcre
[root@kvm pcre2-10.21]# make && make install
[root@kvm pcre2-10.21]# cd .. //返回上级目录
5 安装 apache
[root@kvm ~]# wgethttp://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.27.tar.gz
[root@kvm ~]# tar zxf httpd-2.4.27.tar.gz
[root@kvm httpd-2.4.28]# cd httpd-2.4.27/
[root@kvm httpd-2.4.28]# ./configure \
--prefix=/usr/local/apache \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util \
--with-pcre=/usr/local/pcre \
--with-ssl \
--with-zlib \
--with-mpm=worker \
--enable-rewrite \
--enable-so \
--enable-ssl \
--enable-cache \
--enable-disk-cache \
--enable-file-cache \
--enable-mem-cache \
--enable-headers \
--enable-expires \
--enable-deflate \
--enable-dav \
--enable-dav-fs \
--enable-cgi \
--enable-proxy \
--enable-proxy-fcgi
//这里请根据自身实际情况开启相关模块
[root@kvm httpd-2.4.28]# make && make install
[root@kvm httpd-2.4.28]# cd .. //返回上级目录
6 添加启动服务
[root@kvm ~]# cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/
[root@kvm ~]# mv /etc/rc.d/init.d/apachectl/etc/rc.d/init.d/httpd
[root@kvm ~]# cd /etc/rc.d/init.d/
编辑 httpd ,在 #!/bin/sh 下面添加下面代码
# Comments to support chkconfig on RedHat Linux
# chkconfig: 2345 90 90
# description:http server
注册服务
[root@kvm ~]# chkconfig --add httpd
[root@kvm ~]# chkconfig httpd on
把apache 加入系统环境变量
[root@kvm ~]# vim /etc/profile.d/httpd.sh
//写入
export PATH=$PATH:/usr/local/apache/bin
//保存后赋予执行权限
[root@kvm ~]# chmod 0777 /etc/profile.d/httpd.sh
[root@kvm ~]# source /etc/profile.d/httpd.sh
8 启动 apache
首先检查配置文件是否出错
[root@kvm ~]# /usr/local/apache/bin/apachectl -t
Syntax OK //说明没问题,可以直接启动
启动 apache
[root@kvm ~]# systemctl start httpd.service
然后打开浏览器,输入你的IP地址,看到It works!,说明apache成功启动了
It works!