Linux實驗報告-源代碼編譯安裝Apache(Tarball文件安裝)
實驗背景:
通常GNU組織提供的程序包都是源代碼格式,即將軟件的所有源碼文件先以tar打包,然後再使用gizp或是bzip2壓縮,生成一個.tar.gz或是.tar.bz2結尾的軟件包,也稱爲Tarball文件。
簡單地說,Tarball文件即程序源代碼編譯安裝通常需要如下三個步驟:./configure à make à make install
第一步:執行源代碼路徑下的configure腳本
此步驟的目的是:a,檢查編譯環境是否完備;b,通過configure腳本選項使用戶可以定製編譯配置,如 --prefix=PATH 指定程序安裝路徑
第二步:make命令 # 自動執行編譯
第三步:make install命令 #將編譯好的程序放入指定的路徑或默認路徑下
實驗目的:
瞭解Tarball文件安裝步驟。
通過源代碼編譯安裝Apache,並開啓此服務。最後測試web服務是否開啓。
實驗環境:
VmwareWorkstation 9,CentOS 6.4,httpd-2.4.7.tar.gz
實驗準備:
1,編譯安裝前需先確保系統的開發環境是否已配置,即需先安裝如下三個包組:Development tools、Server Platform Development和Desktop Platform Development
2, httpd依賴於pcre的開發功能,所以需要事先安裝上pcre-devel包
3,httpd還依賴於交心版本的apr和apr-util,所以實驗前也需事先安裝上此哼哈二將。否則,即會遇到本文最後的一些問題。
實驗步驟:
1,下載Apache的主程序包httpd。
(官網http://httpd.apache.org或是其它鏡像網站下載)
2,解壓出源程序,並進入源程序目錄
在源程序目錄下通常有INSTALL、README等文件,在安裝之前可以先查看一下這些文件。比如INSTALL文件記錄了此程序的安裝步驟,告知了完整的編譯安裝步驟參考網址:http://httpd.apache.org/docs/2.4/install.html
3,執行configure腳本,開始檢查編譯環境
正常執行結束,沒有error信息即可
4,自動執行編譯
[root@localhost httpd-2.4.7]# make
5,安裝已編譯完成的程序
[root@localhost httpd-2.4.7]# make install
默認是安裝在 /usr/local/apache2/bin目錄下
6,開啓Apache服務
[root@localhost httpd-2.4.7]#/usr/local/apache2/bin/apachectl start
7,測試成功
此web page的路徑通常在 PREFIX/htdocs/.
實驗中遇到的問題:
1,Q:執行configure腳本時,異常退出,報錯信息:configure: error: APR not found.Please read the documentation.
A:查看Apache的編譯安裝說明(http://httpd.apache.org/docs/2.4/install.html),其中Requirements中指出安裝Apache之前,系統上需安裝APR和APR-Util。按照操作說明,下載APR和APR-Until源程序包,並解壓縮至Apache源程序目錄下的./srclib/apr 和 ./srclib/apr-util目錄下。再次執行configure腳本即可順利通過。(或者分別編譯安裝APR和APR-Util源程序包後也可以正常執行configure腳本)
2,Q:執行configure腳本時,異常退出,報錯信息:configure: error: pcre-config for libpcre not found. PCRE isrequired and availbe from http://pcre.org/
A:同理,下載pcre源程序包,編譯安裝後,即可解決。
3,Q:編譯安裝完成Apache並開啓服務後,瀏覽器中輸入http://locahost可驗證成功,但是 http://本機IP 無法訪問。
A:通過命令 serviceiptables stop臨時禁用防火牆,即可正常訪問。
(但是接下來即使再start iptables, 甚至apachectl stop,此網頁仍可訪問,像是訪問的是緩存,如何清除?)