Linux實驗報告-源代碼編譯安裝Apache(Tarball文件安裝)

Linux實驗報告-源代碼編譯安裝ApacheTarball文件安裝)

實驗背景:

通常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 9CentOS 6.4httpd-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,解壓出源程序,並進入源程序目錄

wKiom1MKtkejW2AxAADzE9D0_lI765.jpg

在源程序目錄下通常有INSTALLREADME等文件,在安裝之前可以先查看一下這些文件。比如INSTALL文件記錄了此程序的安裝步驟,告知了完整的編譯安裝步驟參考網址:http://httpd.apache.org/docs/2.4/install.html

wKioL1MKtoajtXEJAAGusncSJ-g370.jpg

3,執行configure腳本,開始檢查編譯環境

wKiom1MKtvmBIbYBAAF9lcEQ-Vk084.jpg

正常執行結束,沒有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

wKiom1MKt16ykIt_AAESu2UsQIo379.jpg

7,測試成功

wKioL1MKuL7C8gFOAABxEgLg8ZI661.jpg

web page的路徑通常在 PREFIX/htdocs/.

實驗中遇到的問題:

1Q:執行configure腳本時,異常退出,報錯信息:configure: error: APR not found.Please read the documentation.

     A:查看Apache的編譯安裝說明(http://httpd.apache.org/docs/2.4/install.html),其中Requirements中指出安裝Apache之前,系統上需安裝APRAPR-Util。按照操作說明,下載APRAPR-Until源程序包,並解壓縮至Apache源程序目錄下的./srclib/apr  ./srclib/apr-util目錄下。再次執行configure腳本即可順利通過。(或者分別編譯安裝APRAPR-Util源程序包後也可以正常執行configure腳本)

2Q:執行configure腳本時,異常退出,報錯信息:configure: error: pcre-config for libpcre not found. PCRE isrequired and availbe from http://pcre.org/

    A:同理,下載pcre源程序包,編譯安裝後,即可解決。

3Q:編譯安裝完成Apache並開啓服務後,瀏覽器中輸入http://locahost可驗證成功,但是 http://本機IP 無法訪問。

wKioL1MKuQnwZ2PhAACzSZ6JRRc271.jpg

    A:通過命令 serviceiptables stop臨時禁用防火牆,即可正常訪問。

(但是接下來即使再start iptables, 甚至apachectl stop此網頁仍可訪問,像是訪問的是緩存,如何清除?)

 

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