源码安装
源码安装:
http2.4源码安装:
1> 把httpd-2.4.4.tar.bz2解压到指定目录/usr/local/src下,
# tar -jxvf httpd-2.4.4.tar.bz2 -C /usr/local/src
#cd /usr/local/src 进入该目录
查看该目录下的INSTALL #less INSTALL 可以看到该文件的安装引导方法。
在看一下configure文件(由该软件开发商提供)。#./configure --help |less 查看一下跟多选项。
--sysconfdir=DIR read-only single-machine data [PREFIX/etc] 需指明目录(配置文件)
--with-ssl=PATH OpenSSL installation directory 套接层需指明目录
--with-apr=PATH prefix for installed APR or the full path toapr-config运行库需指明
可以看出在编译过程中需进行检测,最后一行看到我们APR...不具备。
#rpm -qa |grep -i apr (-i 不区分大小写)
看到系统中都装了,为什麽都不认啊。可能是库文件没有被安装,库文件一般都是在 apr-devel 中,装一下这个软件包:#rpm -ivh apr-util-devel-1.2.7-7.el5_3.2.i386.rpm --nodeps
--force
依然没成功,提示本版本比较低,应找到1.4以上版本才行。
#tar -zxvf apr-1.4<table> -C /usr/local/src
#tar -zxvf apr-util<table> -C /usr/local/src
#cd /usr/local/src/apr-1.<tab> 这目录下有README 和configure目录,我们先看readme
#./configure --prefix=/usr/local/apr 生成许多makefile文件,这是生成的链接的
#make
#make install
#ll /usr/local/apr 可以看到bin的类文件和include头文件、lib库文件
创建连接]# cd /usr/include #ln -s /usr/local/apr/include/* . #ldconfig (更新缓存)
# ll |less # vim /etc/ld.so.conf这个可以看到让我们去看这个文件# cd /etc/ld.so.conf.d/
创建一个文件 #vim apr.conf
#ldconfig (更新缓存)# ldconfig -pv |grep apr (查看加载库文件)
接下来配置apr-util-1.5.1 文件
# cd /usr/local/src/apr-u<tab>/
# ./configure --prefix=/usr/local/apr-util
出现error (APR could not be located. Please use the --with-apr option.)查看一下帮助
这告诉我们后面必须跟一个完整路径,带有apr-conf,这个必须查看ll /usr/local/src/apr
[root@localhost apr]# tree |less 可以找到apr-conf目录,
[root@localhost apr]# cd /usr/local/src/apr-util-1.5.1/
[root@localhost apr-util-1.5.1]# ./configure --help |grep apr
--with-apr=PATH prefix for installed APR or the full path to
apr-config
--with-apr-iconv=DIR relative path to apr-iconv source
[root@localhost apr-util-1.5.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
这样就开始安装#make #make install
查看形成的文件 #ll /usr/local 看到apr-util 文件(可执行工具)
重新来到apache的源码目录 cd /usr/local/src/httpd-2.4.4/
再次执行]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/apache 可以看到有错误
这次比较明确了。
[root@localhost httpd-2.4.4]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/apache --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/
出现一个小问题:
pcre -config.... 上面说这个扩展库找不到,我们看一下是不是没装
[root@localhost httpd-2.4.4]# rpm -qa |grep pcre
pcre-6.6-2.el5_1.7
装上了,那就是那个devel 共享库的包安装上,应该就可以了。
安装好后在执行上面那个命令。
[root@localhost httpd-2.4.4]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/apache --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/
#make #make install
这就安装完成了,
有人会问要是想卸载怎么办?
我想说直接把生成的文件夹删掉就可以了。
继续按下面的命令走起就可以了,命令都比较简单的。
cd /usr/local/
cd bin/
./apachectl start
netstat -tupln |grep 80(查看80端口是否启动)
此时调用的是apachectl,那么我们想调用自己的脚本来启动apache呢?
那就写脚本吧。。
cd /etc/init.d
vim httpd
#!/bin/bash
#descriptionion: httpd server
#chkconfig: -88 90
HTTPD=’/usr/local/apache/bin/httpd’
CONFFILE=’etc/httpd/httpd.conf’
. /etc/init.d/FUNCTIONS
start() {
[-f /var/lock/subsys/http ] && echo “httpd is starting....”
echo -n “httpd is starting......”
sleep 1
$HTTPD -f $CONFFILE && RETVAL=0||RETVAL=1
[$RETVAL -eq 0] &&touch /var/lock/subsys/http && echo -e “33[31m [ok] 33[0m”||echo -e “33[31m [fail] 33[0m”
}
stop (){
Echo -n “httpd is stoping.....”
sleep 1
killproc httpd && RETVAL=0||RETVAL=1
[$RETVAL -eq 0] && rm -rf /var/lock/subsys/http ||echo -e “33[31m [fail] 33[0m”
}
case $1 in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo “Usage:start|stop|restart”
;;
esac
chmod a+x httpd
chkconfig --add httpd(把httpd服务设置开机自启动)
结束
这样我门的源码安装就完成,亲,记得给好评哦!我会更加努力的。