源碼安裝
源碼安裝:
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服務設置開機自啓動)
結束
這樣我門的源碼安裝就完成,親,記得給好評哦!我會更加努力的。