CentOS下LAMP环境搭建之一源码编译安装apache

前面介绍服务种类的时候,我们介绍了通过源代码安装的服务,那么还没有真正介绍如何通过源代码安装,
那么,我们就以apache为例,给大家完整演示一下,基于源代码的服务安装,这部分内容,其实比服务本身的使用要难一些,下面就让我们一起来看看,

我们现在分以下步骤进行安装apache:

1、 安装编译环境

2、 卸载原有apache

3、 下载解压源码包

4、 安装apache

5、 测试apache

6、 查看apache安装生成的目录

7、 查看apache的配置文件

8、 apache加入系统服务


首先,我们是源代码安装,所以需要一个编译环境,基本上就是需要gcc gcc-c++ zlib zlib-devel这4个包,我们先查询一下

这个是我们已经安装好了的环境,他们当然都已经存在了,如果他们不存在,那么就需要安装它, 执行yum -y install gcc gcc-c++ zlib zlib-devel
然后查询一下,如果都能查到,就表示安装好了。

第2步,我们要先卸载原来已经安装的apache
在源码安装apache之前,我们要先卸载系统中,已经通过rpm包安装的apache。如下:
rpm -qa |grep httpd
rpm -e --nodeps httpd-2.2.15-29.el6.centos.x86_64
rpm -e --nodeps httpd-tools-2.2.15-29.el6.centos.x86_64
其中,-e参数是自动查找依赖关系,--nodeps是强制删除,不考虑其他软件包的依赖。
由于我们是新安装的centos,没有安装过apache,所以这个就没有了


第3步,我们就要获取apache的源码包
这个源码包通常我们直接到apache网站下载就可以了,http://httpd.apache.org/download.cgi
也可以用http://apache.fayea.com/httpd/httpd-2.4.12.tar.gz


如果网络允许,你也可以这样wget http://apache.fayea.com/httpd/httpd-2.4.12.tar.gz
我这里下载的是bz2版,因为它更小
然后tar -jxvf httpd-2.4.12.tar.bz2 -C /tmp


第4步,安装apache
然后,进入cd /tmp/thhpd-2.4.12
执行./configure --prefix=/usr/local/apache2 && make && make install
这个时候通常会报错,提示你缺少apache实时运行环境apr
 
关于这个apr运行环境,就像你运行java是的java运行环境和dircetx运行实库差不多。
apr下载地址:  http://apr.apache.org/download.cgi
pcer下载地址:http://jaist.dl.sourceforge.net/project/pcre/pcre/

大家注意一下上面的地址和下边的地址略有不同,只是地方不一样而已,但都是官方的源代码,到哪里下载都可以


wget http://apache.fayea.com/apr/apr-1.5.1.tar.bz2
wget http://apache.fayea.com/apr/apr-util-1.5.4.tar.bz2
wget http://jaist.dl.sourceforge.net/ ... 2/pcre-8.32.tar.bz2
取得源码包后,就可以安装这个apr运行环境了,
首先,解压源码包到指定目录tmp
tar -jxvf apr-1.5.1.tar.bz2 -C /tmp
tar -jxvf apr-util-1.5.4.tar.bz2 -C /tmp
tar -jxvf pcre-8.32.tar.bz2 -C /tmp

然后,清除原来安装的环境
yum remove apr-util-devel apr apr-util-mysql apr-docs apr-devel apr-util apr-util-docs


然后就可以到tmp目录下,各自的目录中分别安装了:
[root@localhost apr-1.5.1]# ./configure --prefix=/usr/local/apr && make && make install
[root@localhost apr-util-1.5.4]#    ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config && make && make install
[root@localhost pcre-8.32]# ./configure --prefix=/usr/local/pcre &&make && make install
通常情况,如果你是按照我这个步骤来的,就不会有问题了,但很多人可能没有安装第1步的编译环境,那么你就需要安装gcc-c++这个编译器了。

这个时候,我们再执行apache的安装一般,就不会有问题了。
[root@localhost httpd-2.4.12]# ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr \
> --with-apr-util=/usr/local/apr-util/ \

> --with-pcre=/usr/local/pcre && make && make install

这样,我们自己官网上下载的apache源码包就被我们安装到了,我们自己指定的目录/usr/local/apache2这个目录中,其实你不指定这个目录,源码包也是默认安装到这个目录的,当然你也可以指定其他目录,而且你要删除apache时,只要把这个目录删除就可以了,不像RPM包那样,如果没有-e参数,删除一个RPM包服务,简直就是噩梦。

第5步,测试apach
这一步就其实很简单,本来没有什么可写的,就是直接在浏览器敲入你要测试服务器的地址就可以了,但实际情况可能不是这样,
当然首先你要启动apache服务,这个在INSTALL中已经说明了启动方法
/usr/local/apache2/bin/apachectl start|stop|restart
这时,大多的教程会告诉你在浏览器中键入127.0.0.1或者192.168.195.3(安装apache服务的服务器地址),就会显示
It works!
表示apache已经正常工作了,其实你一定会很失望的,就是通常,你都将的到一个无法连接的提示,这是为什么呢,
那是因为你的防火墙没有开80端口。
解答:vi /etc/sysconfig/iptables 在22端口那一行下面照抄一行,并将22改成80,保存。重启一下iptables就好了。
service iptables restart


关于第6步和第7步,查看apach安装目录和配置文件,这里不再赘述,


第8步 把apache加入系统服务
其实这一步,对于大多数用户来说,真的没有什么实际的意义,不过,为配合前面讲的系统服务的分类,这里给大家介绍一下,如何把我们自己安装的源码服务,加入到系统服务中,就是能通过service chkconfig ntsysv调用的服务,这部分内容大家可参考我关于系统服务的讲解既可以了,非常简单。
通常,我们都是把/usr/local/apache2/bin/apachectl start 这一行加入到/etc/rc.d/rc.local中,让系统自动启动,就可以了。


敬请期待,后面的mysql的源码安装,以及configure命令的参数详讲。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值