官术网_书友最值得收藏!

3.2 Apache的獲取和安裝

本節開始介紹Apache的獲取和安裝過程,用戶可以到網上下載Apache的安裝手冊,安裝手冊將逐步地引導讀者完成從Apache源碼下載到源碼編譯的整個過程。

3.2.1 Apache獲取及其最新信息

用戶可以到Apache的官方網站下載Apache的安裝程序。同時Apache是自由軟件,用戶還可以下載所有源程序。Apache的官方網站是http://www.apache.org,下載網址為:http://apache.freelamp.com/httpd/。到目前為止,Apache最新測試版本為2.2,流行的版本為2.0.54。http://httpd.apache.org/docs-2.1/new_features_2_2.html給出了2.2版本的許多新特性。Apache提供了不同平臺的版本。在UNIX平臺和與UNIX兼容平臺Linux下的軟件包文件名為httpd-2.0.54.tar.gz和httpd-2.0.54.tar.bz2兩種,分別是對應gz壓縮格式和bz2壓縮格式的源代碼包。在Apache的官方網站上還可以直接下載Windows平臺的源代碼包httpd-2.0.54-win32-src.zip和二進制可執行文件apache_2.0.54-win32-x86-no_ssl.msi。這里假設用戶下載是Linux版本的軟件包httpd-2.0.54.tar.gz或httpd-2.0.54.tar.bz2。在Red Hat Linux 9安裝盤里還提供了Apache的RPM安裝包。下面幾節將分別詳細講述基于這三種軟件包的Apache的安裝過程。

3.2.2 用httpd-2.0.54.tar.gz軟件包安裝Apache

假設用戶將下載下來的httpd-2.0.54.tar.gz軟件包放在/tmp目錄下。

1.對該軟件包進行解壓縮和解包

在用httpd-2.0.54.tar.gz軟件包安裝Apache之前,首先需要對該軟件包進行解壓縮和解包。用以下命令完成軟件包的解壓縮和解包:

    //對軟件包進行解壓縮和解包處理
    #cd /tmp                       //首先改變當前目錄為軟件包所在目錄
    #ll                               //顯示當前目錄下所有文件
    -rwx------   1 root    root     7508193  6月 23 21:08 httpd-2.0.54.tar.gz
    #tar xvfz httpd-2.0.54.tar.gz  //對軟件包解壓縮和解包
    //再顯示當前目錄下所有文件,可以發現已經解壓縮解包成功,多了一個目錄
    # ll
    總用量 7352
    drwxr-xr-x  11 1000    1000       4096   6月 23 21:09 httpd-2.0.54
    -rwx------   1 root    root     7508193  6月 23 21:08 httpd-2.0.54.tar.gz

2.運行源代碼目錄下的configure命令

解壓縮后,進入源代碼的目錄httpd-2.0.54,并使用配置腳本進行環境的設置。相應的命令為:

    #cd httpd-2.0.54              //改變當前目錄為httpd-2.0.54目錄
    #./configure                  //執行該目錄下配置腳本程序
    checking for chosen layout... Apache
    checking for working mkdir -p... yes
    checking build system type... i686-pc-linux-gnu
    checking host system type... i686-pc-linux-gnu
    checking target system type... i686-pc-linux-gnu
    Configuring Apache Portable Runtime library ...
    checking for APR... reconfig
    configuring package in srclib/apr now
    checking build system type... i686-pc-linux-gnu
    checking host system type... i686-pc-linux-gnu
    ...

3.編譯源代碼

在執行./configure之后,配置腳本會自動生成Makefile。如果在設置的過程中沒有任何的錯誤,就可以開始編譯源代碼了。相應的命令及其顯示結果如下:

    #make
    /tmp/share/httpd-2.0.54/srclib/apr/libtool --silent --mode=compile gcc  -g
    -O2 -pthread   -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE
    -D_SVID_SOURCE -D_GNU_SOURCE -DAP_HAVE_DESIGNATED_INITIALIZER
    -I/tmp/share/httpd-2.0.54/srclib/apr/include
    -I/tmp/share/httpd-2.0.54/srclib/apr-util/include -I.
    -I/tmp/share/httpd-2.0.54/os/UNIX
    -I/tmp/share/httpd-2.0.54/server/mpm/prefork
    -I/tmp/share/httpd-2.0.54/modules/http
    -I/tmp/share/httpd-2.0.54/modules/filters
    -I/tmp/share/httpd-2.0.54/modules/proxy -I/tmp/share/httpd-2.0.54/include
    -I/tmp/share/httpd-2.0.54/modules/generators
    -I/tmp/share/httpd-2.0.54/modules/dav/main -prefer-non-pic -static -c
    request.c && touch request.lo
    ...

4.用make install命令安裝

在源代碼編譯完成后,就可以使用make install安裝Apache至默認的目錄/usr/local/apache下。安裝過程終端顯示結果如下:

    # make  install
    Making install in srclib
    make[1]: Entering directory '/tmp/share/httpd-2.0.54/srclib'
    Making install in apr
    make[2]: Entering directory '/tmp/share/httpd-2.0.54/srclib/apr'
    sed 's,^\(location=\).*$,\1installed,' < apr-config > apr-config.out
    Making all in strings
    make[3]: Entering directory '/tmp/share/httpd-2.0.54/srclib/apr/strings'
    make[4]: Entering directory '/tmp/share/httpd-2.0.54/srclib/apr/strings'
    make[4]: Nothing to be done for 'local-all'.
    make[4]: Leaving directory '/tmp/share/httpd-2.0.54/srclib/apr/strings'
    make[3]: Leaving directory '/tmp/share/httpd-2.0.54/srclib/apr/strings'
    Making all in passwd
    make[3]: Entering directory '/tmp/share/httpd-2.0.54/srclib/apr/passwd'
    make[4]: Entering directory '/tmp/share/httpd-2.0.54/srclib/apr/passwd'
    make[4]: Nothing to be done for 'local-all'.
    ...

這樣,基于gzip軟件包的Apache安裝就全部完成了,用戶就可以使用如下命令啟動Apache服務器了:

    //將當前目錄改為Apache的默認安裝路徑
    #cd /usr/local/apache/bin
    //啟動Apache
    #./apachectl start.

3.2.3 用httpd-2.0.54.tar.bz2軟件包安裝Apache

用httpd-2.0.54.tar.bz2軟件包安裝Apache與上面介紹的使用httpd-2.0.54.tar.gz軟件包安裝Apache的方法類似。假設用戶將下載下來的httpd-2.0.54.tar.bz2軟件包放在/tmp目錄下。

1.對該軟件包進行解壓縮和解包

用httpd-2.0.54.tar.bz2軟件包安裝Apache之前,同樣需要對該軟件包進行解壓縮和解包。bzip2壓縮格式軟件包的解壓縮與gzip格式稍微有點區別。用以下命令完成軟件包的解壓縮和解包處理:

    //對軟件包進行解壓縮和解包處理
    #cd /tmp                           //首先改變當前目錄為軟件包所在目錄
    #ll                                   //顯示當前目錄下所有文件
    -rwx------   1 root    root     7508193  6月 23 21:08 httpd-2.0.54.tar.bz2
    #bunzip2 httpd-2.0.54.tar.bz2      //對軟件包解壓縮
    //再顯示當前目錄下所有文件,可以發現已經解壓縮解包成功,
    //當前目錄下多了一個tar文件
    # ll
    -rwx------   1 root    root     8508193  6月 23 21:08 httpd-2.0.54.tar
    //將tar文件解包
    #tar xvf httpd-2.0.54.tar

2.運行源代碼目錄下的configure命令

解壓縮后,進入源代碼的目錄httpd-2.0.54,并使用配置腳本進行環境的設置。相應的命令為:

    #cd httpd-2.0.54                   //改變當前目錄為httpd-2.0.54目錄
    #./configure                       //執行該目錄下配置腳本程序

3.編譯源代碼

在執行./configure之后,配置腳本會自動生成Makefile。如果在設置的過程中沒有任何的錯誤,就可以開始編譯源代碼了。編譯也是使用make命令。

4.用make install安裝

編譯完成后就可以用make install命令實際安裝Apache了。安裝的過程與上一小節的相似,這里不再贅述。

3.2.4 用RPM軟件包安裝Apache

Apache的RPM軟件包既可以在Red Hat Linux 9安裝光盤上找到,也可以在Red Hat的FTP服務器上找到。在Red Hat Linux 9光盤中,其文件名為httpd-2.0.40-21.i386.rpm,執行如下命令即可完成Apache的安裝:

    #rpm -ivh httpd-2.0.40-21.i386.rpm

ApacheRPM將把文件安裝在如下的目錄中:

● ./etc/httpd/conf:這一目錄包含Apache的所有配置文件,包括access.conf、httpd.conf和srm.conf。

● ./etc/rc.d/:位于這一目錄下的目錄樹包含系統的啟動腳本。ApacheRPM在這里安裝了Web服務器的整套腳本,這些腳本可用來從命令行啟動和停止服務器,并且也可在工作站關閉、啟動或重新引導時自動啟動或停止服務器。

● ./home/httpd:RPM在這一目錄安裝默認的服務器圖標、CGI腳本和HTML文件。如果想在其他地方保存Web內容,通過在服務器的配置文件適當的地方進行更改可以實現。

● ./usr/doc和/usr/man:RPM包含手冊頁和readme文件,它們被放在這些目錄中。像大多數RPM軟件包一樣,readme文件以及其他相關的文檔放在/usr/doc下的一個以服務器軟件包的版本命名的目錄中。

● ./usr/sbin:可執行程序放在這一目錄中。包括服務器程序本身,還有各種工具,如用于創建驗證口令文件的htpasswd程序。

● ./var/log/http:服務器日志文件存放于該目錄。在默認情況下,有兩個日志文件—access_log和error_log,但是可以定義任意多個包含各種信息的自定義日志文件。

★ 注意 ★

如果要升級Apache到更新的版本,RPM不會覆蓋當前的配置文件。RPM將當前文件名后添加.rpmnew的后綴。例如,srm.conf變為srm.conf.rpmnew。

主站蜘蛛池模板: 基隆市| 辛集市| 哈巴河县| 遂平县| 叶城县| 遂溪县| 仙桃市| 安龙县| 泸西县| 栾城县| 拜泉县| 卓尼县| 积石山| 永登县| 金沙县| 集贤县| 特克斯县| 洛阳市| 长葛市| 黔东| 册亨县| 达州市| 苏尼特左旗| 平和县| 堆龙德庆县| 茂名市| 子洲县| 西乌珠穆沁旗| 拉孜县| 斗六市| 图们市| 三台县| 保山市| 丹凤县| 屏东县| 本溪市| 蒙阴县| 合川市| 延边| 绥棱县| 正蓝旗|