- LAMP網站開發黃金組合Linux+Apache+MySQL+PHP
- 楊明華等編著
- 1960字
- 2018-12-29 19:23:35
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。