您的位置:首页 > 运维架构 > Apache

Apache服务器安装过程详解

2013-12-20 13:21 393 查看
安装环境:
CentOS-5.3-i386
VMware-workstation-10.0.1
源码包:
httpd-2.4.4.tar.bz2 http://httpd.apache.org/download.cgi
apr-util-1.5.1.tar.gz http://apr.apache.org
apr-1.4.6.tar.gz http://apr.apache.org安装步骤:
一、下载安装包并拆解。拆解后的一般放置目录:/usr/local/src
1、对根目录下的源码包进行拆解




指令:

tar    -jxvf    httpd-2.4.4.tar.bz2     -C    /usr/local/src/
tar    -zxvf   apr-util-1.5.1.tar.gz    -C    /usr/local/src
tar    -zxvf   apr-1.4.6.tar.gz        -C  /usr/local/src
指定目录,便于以后卸载。拆解后形成的目录:




二、./configure 加入配置选项,检测编译环境并产生makefile文件
1、修改/etc/yum.repos/CentOS-Media.repo文件,只启用本地yum库







2、安装编译所需的开发工具,在CentOS-5.3中需要安装下列开发工具
X Software Development 、Developemnt Tools 、Development Libraries
使用yum groupinstall“工具名称” –disablerepo=\*--enablerepo=c5-media安装所需的开发工具。



过程:





选择"Y"即可。

执行成功图示:





3、进入/usr/local/src目录下的httpd-2.4.4目录,一般情况下都会提供INSTALL文件和README文件,查看INSTALL文件的描述。




执行./configure







但是,很快会出错。因为没有安装APR(Apache portable Run-time libraries,Apache可移植运行库),因此在checking阶段没执行多久就会报错。所以要先安装APR。安装过程中出现”no” 不要紧,关键不能出现error ,出现error表示此阶段命令执行失败,需要重新执行。

4、安装APR
之前我们已经拆解过APR安装包,此时只要进入/usr/local/src/apr-1.4.6目录就行了。进入目录后执行./configure --prefix=/usr/local/apr ,如果没有指定目录的话,系统会自动安装在/usr/local目录下,安装过程产生的库文件放在/usr/local/lib目录下,二进制文件放在/usr/local/bin,这样系统可以很方便的找到,但管理员找起来就很麻烦了。

5、执行make && make install,此命令表示只有在MAKE 执行成功之后才能执行MAKE INSTALL。





为了让其他程序调用库文件,需要在/etc/ld.so.conf.d目录下创建相对应的文件。并把库文件路径写入所创建的文件中。编辑/etc/ld.so.conf.d/apr.conf




使用ldconfig指令此刷新缓存,查看结果。




系统的头文件在/usr/include目录下。为了让其他程序调用头文件,我们可以做一个链接。



6、安装apr-util
查看apr-util与apr的依赖关系



安装apr-util:





此步骤完成之后执行MAKE指令。若MAKE执行成功,再执行MAKE INSTALL。

编辑/etc/ld.so.conf.d/apr-util.conf文件,将apr-util的库文件路径写入文件中,方便其他程序调用。








接下来再安装Apache,切换到/usr/local/src/httpd-2.4.4,执行命令。





安装后再次执行 ./configure--prefix=/usr/local/apache




提示又出错了,少了pcre.config。我们只有见招拆招了。它需要什么,我们就安装什么。那就直接去我们的光盘上查看与pcre相关的包吧。








使用yum指令把它安装了就行了。安装后再次执行安装apache指令。然后再MAKE &&MAKE INSTALL。切换到/usr/include目录下,将头文件做成一个链接。




编辑环境文件,修改PATH变量。







编辑 /etc/man.config文件,把man手册写进去。便于在任何目录下查看帮助手册。




切换到/usr/local/apache/bin目录下,执行./httpd。执行后查看服务状态。



端口已经处于LISTEN状态了。接下来就可以测试了。




可以看到测试成功!

为了方便使用服务,我们还需要编写控制脚本。服务控制脚本一般放置目录/etc/init.d或者/etc/rc.d/inti.d目录下,这两个目录相互是一个链接关系,控制脚本放在哪个目录下都可以,系统都可以找到。

执行命令vim /etc/init.d/httpd,编写一个简单的服务控制脚本命令。


#!/bin/bash
[ -e /etc/init.d/functions ] && . /etc/init.d/functions
prog=/usr/local/apache/bin/httpd
lockfile=/var/lock/subsys/httpd
start   ()  {
if [ -e $lockfile ]; then
echo "httpd is started"
else
echo -n "httpd is starting......                "
sleep 1
$prog && echo "OK" touch $lockfile || echo "failer"
fi
}
stop    () {
if [ ! -e $lockfile ]; then
echo "httpd is stoped"
else
echo -n "httpd is stoping......                 "
sleep 1
killproc httpd && echo "OK" &&  rm -rf $lockfile ||echo "failer"
fi
}
case    "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "Usage:start|stop|restart"
case


本文出自 “inferr” 博客,请务必保留此出处http://inferr.blog.51cto.com/7574698/1343157
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: