Apache完全安裝指南
本文討論如何安裝支持mod_perl、mod_ssl及php的apache web服務(wù)器,并安裝webalizer實(shí)現(xiàn)對(duì)web訪(fǎng)進(jìn)行日志分析。手把手引導(dǎo)初學(xué)者編輯一個(gè)安全、功能完備的web服務(wù)器系統(tǒng)。
所需軟件
apache_1.3.20.tar.gz 主頁(yè): http://www.apache.org本地下載地址
mod_perl-1.26.tar.gz 主頁(yè): http://perl.apache.org本地下載地址
openssl-0.9.6b.tar.gz 主頁(yè): http://www.openssl.org本地下載地址
mod_ssl-2.8.4-1.3.20.tar.gz 主頁(yè): http://www.modssl.org本地下載地址
php-4.0.6.tar.gz主頁(yè): http://php.apache.org本地下載地址
webalizer-2.01-06-src.tgz 主頁(yè): http://www.mrunix.net/webalizer本地下載地址
gd-1.8.4.tar.gz 主頁(yè): http://www.boutell.com/gd本地下載地址
除此以外還需要系統(tǒng)安裝有如下幾個(gè)rpm包:
libpng libpng-devel zlib zlib-devel libjpeg libjpeg-devel
可以通過(guò)rpm -qa|grep libpnp命令來(lái)檢測(cè)系統(tǒng)是否安裝有這些rpm包。如果沒(méi)有安裝,則加載redhat安裝光盤(pán),在/mnt/cdrom/RedHat/RPMS下安裝這些rpm包。
第一步:安裝openssl
1、解壓軟件:
# tar xvfz openssl-0.9.6b.tar.gz
2、安裝
# cd openssl-0.9.6b# ./config# make# make test# make install
第二步:安裝mod_ssl
1、解壓mod_ssl
# tar xvfz apache_1.3.20.tar.gz# tar xvfz mod_ssl-2.8.4-1.3.20.tar.gz
2、安裝mod_ssl
# cd mod_ssl-2.8.4-1.3.20# ./configure --with-apache=../apache_1.3.20
第三步:安裝mod_perl
1、解壓
# tar xvfz mod_perl-1.26.tar.gz
2、安裝
$ perl Makefile.PL EVERYTHING=1 APACHE_SRC=../apache_1.3.20/src USE_APACI=1 PREP_HTTPD=1 DO_HTTPD=1 $ make $ make install
第四步:配置apache
# cd apache_1.3.20# ./configure
五步:安裝php
1、解壓
# tar xvfz php-4.0.6.tar.gz
2、安裝
# cd php-4.0.6# CFLAGS='-O2 -I/usr/local/ssl/include/openssl'# ./configure --with-apache=../apache_1.3.20 --with-mysql --with-gd=../gd-1.8.4 --enable-memory-limit=yes --enable-debug=no # gmake# gmake install
第六步:安裝apache
# SSL_BASE=../openssl-0.9.6b# ./configure --enable-module=ssl --activate-module=src/modules/perl/libperl.a --enable-module=perl --activate-module=src/modules/php4/libphp4.a --enable-module=php4 # make# make certificate # make install
第七步:安裝gd
# make all# cp libgd.a /usr/lib# cp gd*.h /usr/include/
第八步:安裝webalizer
1、解壓
# tar xvfI webalizer-2.01-06-src.tar.bz2
2、安裝
# cd webalizer-2.01-06# ./configure# make# make install
3、配置
將/etc/下的webalizer.conf.sample改名為webalizer.conf。
根據(jù)服務(wù)器實(shí)際修改其中的以下內(nèi)容:
LogFile /usr/local/apache/logs/access_log
設(shè)定www訪(fǎng)問(wèn)日志文件位置
OutputDir /usr/local/apache/htdocs/usage
設(shè)定web訪(fǎng)問(wèn)統(tǒng)計(jì)輸出目錄
HistoryName webalizer.hist
Incremental yes
HostName www.test.com
PageType htm*PageType cgiPageType phtmlPageType php3PageType plPageType jsp
4、設(shè)定cron任務(wù)
在/etc/crontab文件最后添加如下內(nèi)容:
02 4 * * * root /usr/local/bin/webalizer
即可
5、創(chuàng)建輸出目錄
#mkdir /usr/local/apache/htdocs/usage
第九步:保護(hù)訪(fǎng)問(wèn)統(tǒng)計(jì)數(shù)據(jù)不被非法訪(fǎng)問(wèn)
我們肯定不會(huì)希望自己網(wǎng)站訪(fǎng)問(wèn)統(tǒng)計(jì)信息隨意被別人瀏覽,因此需要將usage目錄保護(hù)起來(lái),只允許合法用戶(hù)訪(fǎng)問(wèn)。
一、條件
www.test.com的站點(diǎn)對(duì)"/"有設(shè)置為:DocumentRoot /usr/local/apache/htdocsAccessFileName .htaccessAllowOverride All
二、需求
需求:限制/usr/local/apache/htdocs/usage/目錄的訪(fǎng)問(wèn),只允許用戶(hù)"admin"以口令"12345678"訪(fǎng)問(wèn)此目錄。
三、使用htpasswd建立用戶(hù)文件
htpasswd -c /usr/local/apache/.htpasswd admin
此程序會(huì)詢(xún)問(wèn)用戶(hù)"admin"的口令,你輸入"12345678",兩次生效。
四、建立.htaccess文件
用vi在/usr/local/apache/htdocs/usage/目錄下建立一個(gè)文件.htaccess,寫(xiě)入以下幾行:
AuthName admin-onlyAuthType BasicAuthUserFile /usr/local/apache/.htpasswdrequire user admin
五、測(cè)試
這時(shí)候通過(guò)瀏覽器訪(fǎng)問(wèn)http://www.test.com/usage就會(huì)彈出框請(qǐng)求輸入用戶(hù)名和口令,這時(shí)候輸入admin、12345678就可以才可以訪(fǎng)問(wèn)該目錄。