centos 學習筆記——源碼編譯安裝apache

每一次遇到錯誤解決錯誤的過程,都是知識積累的最好時光,他會讓你對這個知識點記憶更深刻!好吧原諒我這麼無恥的給自己知識儲備不足來開脫,話不多說把這次歷程記錄下來吧。

系統還是老樣子:

#cat /etc/redhat-release ;uname -r
CentOS release 6.7 (Final)
2.6.32-573.el6.x86_64

學習安裝的過程中遇到很多前輩們走過的彎路,估計我是都已經走過一遍了,先把需要準備的都提前備好:

apache 版本2.4.20 (apache 官網地址),所依賴的組件包 apr(Apache portable Run-time libraries,Apache可移植運行庫)版本 1.5.2(apr 官網地址)apr-util(與apr組件一樣

,該目錄中也是包含了一些常用的開發組件)版本 1.5.4(apr-util官網同apr),最後編譯過程中還需要pcre(Perl Compatible Regular Expressions是一個Perl庫,包括 perl 兼容的正則表達式庫)組件,版本8.39(pcre官網)。至於爲什麼選最新的版本,抱歉目前本人還無法解答,都是看着哪個順眼選哪個o(╯□╰)o。

忘了一點,編譯這些組件之前還需要把一些編譯器裝上不然的話不會成功的,沒錯你猜對了,專注小白三十年這些蠢事我都幹過了 嘿嘿~。編譯器直接選擇yum安裝了

yum install -y gcc gcc-c++

好,開始編譯了,我這次的選擇是根據鳥哥的建議將下載的源碼放在了/usr/local/src目錄下邊,然後將安裝的apache安裝到/usr/local/apache下。

# wget -c http://mirrors.cnnic.cn/apache//httpd/httpd-2.4.20.tar.bz2 -P /usr/local/src
# wget -c http://archive.apache.org/dist/apr/apr-1.5.2.tar.bz2 -P /usr/local/src
# wget -c http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.bz2 -P /usr/local/src
# wget -c ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.bz2 -P /usr/local/src

下載完畢後進行逐個解壓縮:

# tar -jxvf httpd-2.4.20.tar.bz2 -C .
# tar -jxvf apr-1.5.2.tar.bz2 -C .
# tar -jxvf apr-util-1.5.4.tar.bz2 -C .
# tar -jxvf pcre-8.39.tar.bz2 -C .

解壓完畢之後按順序的話應該先編譯安裝apr包,進入該目錄後執行:

# ./configure --prefix=/usr/local/apr

編譯成功後執行

# make clean;make
# make install

接下來安裝apr-util包,進入該目錄後執行:

# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr 注意:--with是引入該util包所依賴的其他組件,後邊跟的是一個路徑,apr後不要加“/”否則編譯容易出現問題。
# make clean;make
# make install

繼續安裝pcre包

# ./configure --prefix=/usr/local/pcre
# make ;make install

前提條件都準備完畢,那主角該登場了,開始安裝apache!真是原先使用yum安裝文件的時候發現是多麼容易,真自己動手發現好多知識還是需要自己去研究的。

進入http目錄

# ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr \ 
> --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
# make clean ; make
# make install

如果不出意外的話,安裝應該是結束了

接下來進行apache的配置工作,不能裝完就算了,目的是用它!

爲apache添加服務腳本:

# cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
# echo "export PATH=$PATH:/usr/local/apache/bin > /etc/profile.d/httpd.sh
# chmod +x /etc/profile.d/httpd.sh
# source /etc/profiled.d/httpd.sh

最後編輯apache配置文件,網上說的是在/etc/httpd/httpd.conf中,發現我的沒有就編輯了

/usr/local/apache/conf/httpd.conf 這個文件,再其中加入ServerName 127.0.0.1:80 保存後退出

使用service命令啓動apache

# service httpd start 
#

沒有結果就是最好的結果,看來是成功了,打開瀏覽器輸入服務器IP地址後如果出現“It works”這個頁面則成功了!

好啊!前邊的安裝還好,後邊的配置服務腳本什麼的還是不太熟練,寫完再練練吧

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章