实验准备

  1. 实验环境:Red Hat Enterprise 6.5
  2. 软件包:apr、apr-util、httpd
    • 备注:apache官网下载http://www.apache.org/将实验所需的软件包下载好,并解压到指定文件夹

实验开始

首先将解压好的apr和apr-util复制到指定文件夹

cp -R  cp -R apr /opt/httpd-2.4.2/srclib/apr
cp -R  apr-util /opt/httpd-2.4.2/srclib/apr-util

安装编译环境(利用yum仓库安装,需要提前建好yum仓库,如何创建yum仓库在我以前的文章中有介绍)

yum install gcc gcc-c++ make pcre pcre-devel -y

编译安装apache

首先进行安装前的配置

./configure \
--prefix=/usr/local/apache \         //安装路径
--enable-so \                              //使用动态模块加载
--enable-rewrite \                       //重写
--enable-mods-shared=most \    //启用模块
--with-mpm=worker \                  //使用多处理模块
--disable-cgid \                          //开启通用网关接口
--disable-cgi

安装

make           //编译(转换成二进制语言)
make install   //编译安装

服务优化

为了方便管理,我们要将httpd服务添加到系统启动项 我们用一条命令对脚本文件进行过滤,然后再加入到/etc/init.d 文件夹内。这时的脚本文件还不完整,我们还需对其进行额外的修改。

grep -v "#" /usr/local/apache/bin/apachectl > /etc/init.d/httpd

利用vim编辑器对文件进行修改,在首行插入以下内容

vim /etc/init.d/httpd 
#!/bin/sh
    # chkconfig:2345 85 15
    # description:Apache is a World Wide Web server

现在这个文件还不具有执行权限,我们需要对其进行提权操作

chmod +x /etc/init.d/httpd

添加httpd服务

chkconfig --add httpd

设置端口在字符界面和图形化界面自启

chkconfig --level 35 httpd on

查看服务端口信息

chkconfig --list httpd

为了方便我们对apache的管理,我们可以将httpd.conf文件建立一个软连接到/etc目录下

ln -s /usr/local/apache/conf/httpd.conf /etc/httpd.conf

编辑配置文件httpd.conf 开启服务

service httpd start

查看服务是否成功开启

netstat -ntap | grep 80

实现宿主机访问