Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。
Apache 的安装无外乎两种方式:源代码安装和二进制包安装。这两种安装类型各有特色,二进制包安装不需要编译,而源代码安装则需要先配置编译再安装,二进制包安装在一个固定的位置下,选择固定的模块,而源代码安装则可以让你选择安装路径,选择你想要的模块。本文主要介绍源代码安装。
系统环境:Red Hat Enterprise Linux 6.5 主要配置文件:httpd.conf
获取源代码包 httpd-2.4.23.tar.bz2 apr-1.5.2.tar.gz apr-util-1.5.4.tar.gz
安装之前需要将以上三个源代码包导入Linux系统内
Apache服务源码安装开始
root@localhost ~]#tar xzvf apr-1.5.2.tar.gz -C /opt/
[root@localhost ~]#tar xzvf apr-util-1.5.4.tar.gz -C /opt/[root@localhost ~]#tar xjvf httpd-2.4.23.tar.bz2 -C /opt/ //将源码包解压[root@localhost ~]#cd /opt/ //切换到源码包解压目录
[root@localhost opt]#cp -r apr-1.5.2/ httpd-2.4.23/srclib/apr[root@localhost opt]#cp -r apr-util-1.5.4/ httpd-2.4.23/srclib/apr-util //将apr源码注入httpd-2.4.23/srclib/apr目录中[root@localhost opt]# mount /dev/cdrom /mnt/ //挂载光盘搭建yum仓库
[root@localhost opt]# vi /etc/yum.repos.d/rhel-source.repo //通过vi编辑器编辑yum仓库源
[rhel-source]
name=Red Hat Enterprise Linux $releasever – $basearch – Sourcebaseurl=file:///mntenabled=1gpgcheck=0 //编辑完毕wq保存退出编辑[root@localhost opt]#cd /mnt //搭建yum仓库优化编译语言
[root@localhost mnt]# yum -y install \gcc \gcc-c++ \make \pcre-devel[root@localhost mnt]# cd /opt/httpd-2.4.23/
[root@localhost httpd-2.4.23]#./configure \ //整合编译源码–prefix=/usr/local/apache \–enable-so \–enable-rewrite \–enable-mods-shared=most \–with-mpm=worker \–disable-cgid \–disable-cgi[root@localhost httpd-2.4.23]# yum remove httpd //编译安装之前将系统本身自带的web服务器卸载
[root@localhost httpd-2.4.23]# make //编译
[root@localhost httpd-2.4.23]# make install //编译安装
[root@localhost httpd-2.4.23]# ln -s /usr/local/apache/bin/* /usr/local/bin/ //建立软链接
[root@localhost httpd-2.4.23]# grep -v “#” /usr/local/apache/bin/apachectl > /etc/init.d/httpd //以apachectl脚本为模板生成Apache服务控制脚本
[root@localhost httpd-2.4.23]#vi /etc/init.d/httpd
在文件最前面插入下面的行,使其支持chkconfig命令:#!/bin/sh# chkconfig: 2345 85 15# description: Apache is a World Wide Web server. //编辑完成wq保存退出编辑
[root@localhost httpd-2.4.23]# chmod +x /etc/init.d/httpd
[root@localhost httpd-2.4.23]# chkconfig –add httpd //将httpd加入services管理器[root@localhost httpd-2.4.23]# vi /usr/local/apache/conf/httpd.conf //编辑Apache主配置文件
只需修改下面这两行配置
ServerName localhost.localdomain //设置成hostname显示的名称
Listen 192.168.10.20:80 //192.168.10.20为服务器ip地址[root@localhost httpd-2.4.23]#service httpd start //启动服务
查看httpd的80端口是否处于监听状态,如果没有处于监听状态,就是Linux防火墙的原因,可以清除防火墙规则重新启动服务即可
[root@localhost httpd-2.4.23]# netstat -antp | grep httpd
[root@localhost httpd-2.4.23]#service iptables stop
[root@localhost httpd-2.4.23]#service httpd restart