Web服務(wù)器日志統(tǒng)計(jì)分析完全解決方案
文章相關(guān)軟件:
webalizer | http://www.mrunix.net/webalizer/ |
cronolog | http://www.cronolog.org/ |
Apache | http://www.apache.org/ |
一、 前言
隨著Internet上Web服務(wù)的發(fā)展,幾乎各個(gè)政府部門、公司、大專院校、科研院所等都在構(gòu)建或正在建設(shè)自己的網(wǎng)站。而與此同時(shí),在構(gòu)建網(wǎng)站建設(shè)中各個(gè)單位都會(huì)遇到各種各樣的問題,那么對web服務(wù)器的運(yùn)行和訪問情況進(jìn)行詳細(xì)和周全的分析對于了解網(wǎng)站運(yùn)行情況,發(fā)現(xiàn)網(wǎng)站存在的不足,促進(jìn)網(wǎng)站的更好發(fā)展重要性是不言而喻的。
管理Web網(wǎng)站不只是監(jiān)視Web的速度和Web的內(nèi)容傳送,它要求不僅僅關(guān)注服務(wù)器每天的吞吐量,還要了解對這些Web網(wǎng)站的外來訪問,了解網(wǎng)站各頁面的訪問情況,根據(jù)各頁面的點(diǎn)擊頻率來改善網(wǎng)頁的內(nèi)容和質(zhì)量、提高內(nèi)容的可讀性,跟蹤包含有商業(yè)交易的步驟以及管理Web網(wǎng)站“幕后”的數(shù)據(jù)等。
為了更好地提供WWW服務(wù),監(jiān)控WEB服務(wù)器的運(yùn)行情況、了解網(wǎng)站內(nèi)容的詳細(xì)訪問狀況就越來越顯得重要和迫切了。而這些要求都可以通過對web服務(wù)器的日志文件的統(tǒng)計(jì)和分析來做到。
二、WEB日志分析的原理
網(wǎng)站服務(wù)器日志記錄了web服務(wù)器接收處理請求以及運(yùn)行時(shí)錯(cuò)誤等各種原始信息。通過對日志進(jìn)行統(tǒng)計(jì)、分析、綜合,就能有效地掌握服務(wù)器的運(yùn)行狀況,發(fā)現(xiàn)和排除錯(cuò)誤原因、了解客戶訪問分布等,更好的加強(qiáng)系統(tǒng)的維護(hù)和管理。
在WWW服務(wù)模型是非常簡單的(見圖1):
1) 客戶端(瀏覽器)和web服務(wù)器建立tcp連接,連接建立以后,向web 服務(wù)器發(fā)出訪問請求(如:get),根據(jù)HTTP協(xié)議該請求中包含了客戶端的IP地址、瀏覽器的類型、請求的URL等一系列信息。
圖1 web訪問機(jī)制
2) web服務(wù)器收到請求后,將客戶端要求的頁面內(nèi)容返回到客戶端。如果出現(xiàn)錯(cuò)誤,那么返回錯(cuò)誤代碼。
3) 服務(wù)器端將訪問信息和錯(cuò)誤信息紀(jì)錄到日志文件里。下面是客戶端發(fā)送給web服務(wù)器請求的數(shù)據(jù)報(bào)的內(nèi)容:
GET /engineer/ideal/list.htm HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */*
Referer: http://www.linuxaid.com.cn/engineer/ideal/
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Host: www.linuxaid.com.cn
Connection: Keep-Alive
可以看到,在客戶機(jī)的請求里包含了很多有用的信息,例如:客戶端類型等等。而web服務(wù)器就會(huì)將請求的web頁內(nèi)容發(fā)送返回給客戶機(jī)。
目前最常用的web服務(wù)器有Apache、Netscape enterprise server、MS IIS等。而目前互聯(lián)網(wǎng)上最常用的web服務(wù)器就是apache,因此我們這里的討論都以Linux+apache環(huán)境討論,其他的應(yīng)用環(huán)境類似。對于Apache來說,支持多種日志文件格式,最常見的是common和combined兩種模式,其中combined方式比common方式的日志的信息要多Referer(該請求來自于哪里,例如來自于yahoo的搜索引擎)和User-agent(用戶客戶端類型,如mozilla或IE)。我們這里討論combined類型。下面是common類型的日志示例:
218.242.102.121 - - [06/Dec/2002:00:00:00 +0000] "GET /2/face/shnew/ad/via20020915logo.gif HTTP/1.1" 304 0 "http://www.mpsoft.net/" "Mozilla/4.0 (compatible; MSIE 6.0; Windows 98)"
61.139.226.47 - - [06/Dec/2002:00:00:00 +0000] "GET /cgi-bin/guanggaotmp.cgi?1 HTTP/1.1" 200 178 "http://www3.beareyes.com.cn/1/index.php" "Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)"
218.75.41.11 - - [06/Dec/2002:00:00:00 +0000] "GET /2/face/shnew/ad/via20020915logo.gif HTTP/1.1" 304 0 "http://www.mpsoft.net/" "Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)"
61.187.207.104 - - [06/Dec/2002:00:00:00 +0000] "GET /images/logolun1.gif HTTP/1.1" 304 0 "http://www2.beareyes.com.cn/bbs/b.htm" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
211.150.229.228 - - [06/Dec/2002:00:00:00 +0000] "GET /2/face/pub/image_top_l.gif HTTP/1.1" 200 260 "http://www.beareyes.com/2/lib/200201/12/20020112004.htm" "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)"
從上面的日志文件可以看出日志記錄會(huì)記錄客戶端的IP地址、訪問發(fā)生的時(shí)間、訪問請求的頁面、web服務(wù)器對于該請求返回的狀態(tài)信息、返回給客戶端的內(nèi)容的大?。ㄒ宰止?jié)為單位)、該請求的引用地址、客戶瀏覽器類型等信息。
三、apache日志的配置和管理
本文中我們假設(shè)我們的apache運(yùn)行有兩個(gè):www.secfocus.com和www.tomorrowtel.com。我們需要對這兩個(gè)分別進(jìn)行訪問日志分析和統(tǒng)計(jì)。
Apache配置文件中,我們需要關(guān)心的和日志相關(guān)的配置有兩個(gè):
CustomLog /www/logs/access_log common
ErrorLog /www/logs/error_log
CustomLog用來指示apache的訪問日志的存放位置(這里保存在/www/logs/access_log中)和格式(這里為common);ErrorLog用來指示apache錯(cuò)誤信息日志的存放位置。
對于不配置的服務(wù)器來說,只需要直接在httpd.conf中查找CustomLOg的配置進(jìn)行修改即可;而對于具有多個(gè)虛擬服務(wù)器的web服務(wù)器來說,需要分離各個(gè)虛擬服務(wù)器的訪問日志,以便對各個(gè)虛擬服務(wù)器進(jìn)行訪問統(tǒng)計(jì)和分析。因此這就需要在虛擬服務(wù)器配置中進(jìn)行獨(dú)立的日志配置,示例:
NameVirtualHost 75.8.18.19
ServerName www.secfocus.com
ServerAdmin secfocus@secfocus.com
DocumentRoot /www/htdocs/secfocus/
CustomLog "/www/log/secfocus" combined
Alias /usage/ "/www/log/secfocus/usage/"
ServerName www.tomorrowtel.com
ServerAdmin tomorrowtel @ tomorrowtel.com
DocumentRoot /www/htdocs/ tomorrowtel
CustomLog "/www/log/tomorrowtel " combined
Alias /usage/ "/www/log/tomorrowtel/usage/"
這里需要注意的是每個(gè)的定義都有一個(gè)CustomLog命令,用來指定該訪問日志的存放文件;而Alias命令用來讓日志分析生成的報(bào)表能通過www.secfocus.com/usage/的方式來訪問。通過上面的配置就完成了日志文件的保存。
但是下來遇到的一個(gè)問題就是日志文件的輪循,因?yàn)槿罩臼且恢痹谠龃蟮?,如果不進(jìn)行處理那么日志文件會(huì)越來越大,會(huì)影響web服務(wù)器運(yùn)行效率;速率,還可能過大耗盡服務(wù)器硬盤空間,導(dǎo)致服務(wù)器無法正常運(yùn)行,另外如果單個(gè)日志文件大于操作系統(tǒng)單文件尺寸的的限制,從而更進(jìn)一步影響web服務(wù)的運(yùn)行。而且日志文件如果不進(jìn)行輪循也不變于日志統(tǒng)計(jì)分析程序的運(yùn)行,因?yàn)槿罩窘y(tǒng)計(jì)分析都是以天為單位進(jìn)行統(tǒng)計(jì)分析的,跨越很長時(shí)間日志會(huì)使得日志統(tǒng)計(jì)分析程序運(yùn)行特別慢。因此這里就需要對web服務(wù)器日志文件每天進(jìn)行輪循。
四、web服務(wù)器日志輪循
web服務(wù)器日志輪循比較好的方式有三種:第一種方法是利用Linux系統(tǒng)自身的日志文件輪循機(jī)制:logrotate;第二種方法是利用apache自帶的日志輪循程序rotatelogs;第三種是使用在apache的FAQ中推薦發(fā)展已經(jīng)比較成熟的一個(gè)日志輪循工具cronolog。
對于大型的WEB服務(wù)來說,其往往使用實(shí)用負(fù)載均衡技術(shù)提高web站點(diǎn)服務(wù)能力,這樣后臺(tái)有多個(gè)服務(wù)器提供WEB服務(wù),這大大方便了服務(wù)的分布規(guī)劃和擴(kuò)展性,但多個(gè)服務(wù)器的分布就需要對日志進(jìn)行合并統(tǒng)一進(jìn)行統(tǒng)計(jì)分析。因此為了保證統(tǒng)計(jì)的精確性就需要嚴(yán)格按照每天的時(shí)段來自動(dòng)生成日志文件。
4.1 logrotate實(shí)現(xiàn)日志輪循
首先我們討論采用Linux系統(tǒng)自身的日志文件輪循機(jī)制:logrotate的方法。Logrotate是Linux系統(tǒng)自身帶的一個(gè)日志輪循程序,是專門對各種系統(tǒng)日志(syslogd,mail)進(jìn)行輪循的程序。該程序是由運(yùn)行程序的服務(wù)crond來每天凌晨4:02運(yùn)行的,可以在/etc/cron.daily目錄下可以看到logrotate文件,其內(nèi)容如下:
#!/bin/sh
/usr/sbin/logrotate /etc/logrotate.conf
可以看到每天清晨crond都會(huì)啟動(dòng)/etc/cron.daily目錄下的logrotate腳本來進(jìn)行日志輪循。
而在/etc/logrorate.conf中可以看到內(nèi)容如下:
# see "man logrotate" for details
# rotate log files weekly
weekly
# keep 4 weeks worth of backlogs
rotate 4
# create new (empty) log files after rotating old ones
create
# uncomment this if you want your log files compressed
#compress
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d
# no packages own wtmp -- we@#ll rotate them here
/var/log/wtmp {
monthly
create 0664 root utmp
rotate 1
}
# system-specific logs may be also be configured here.
從logrotate的配置文件中可以看到除了wtmp以外,需要滾動(dòng)的日志的配置都保存在/etc/logroate.d目錄下。因此我們只需要在該目錄下創(chuàng)建一個(gè)名為apache的配置文件,來指示logrotate如何輪循web服務(wù)器的日志文件即可,下面是一個(gè)示例:
/www/log/secfocus {
rotate 2
daily
missingok
sharedscripts
postrotate
/usr/bin/killall -HUP httpd 2> /dev/null || true
endscript
}
/www/log/tomorrowtel {
rotate 2
daily
missingok
sharedscripts
postrotate
/usr/bin/killall -HUP httpd 2> /dev/null || true
endscript
}
這里“rotate 2”表示輪循時(shí)只包括兩個(gè)備份文件,也就是只有:access_log、access_log.1、access_log.2三個(gè)日志備份文件。就這樣就實(shí)現(xiàn)了對兩個(gè)的日志文件的輪循。后面我們會(huì)討論如何使用日志統(tǒng)計(jì)分析軟件對日志文件進(jìn)行處理。
這種方法的優(yōu)點(diǎn)是不需要其他第三方工具就可以實(shí)現(xiàn)日志輪循,但是對于重負(fù)載的服務(wù)器和使用負(fù)載均衡技術(shù)的web服務(wù)器來說這種方法就不是很實(shí)用。因?yàn)樗菍ο鄳?yīng)服務(wù)進(jìn)程發(fā)出一個(gè)-HUP重啟命令來實(shí)現(xiàn)日志的截?cái)鄽w檔的,這樣會(huì)影響服務(wù)的連續(xù)性。
4.2 使用apache自帶的rotatelogs實(shí)現(xiàn)日志輪循
apache提供了將不把日志直接寫入文件,而是通過管道發(fā)送給另外一個(gè)程序的能力,這樣就大大的加強(qiáng)了對日志進(jìn)行處理的能力,這個(gè)通過管道得到的程序可以是任何程序:如日志分析,壓縮日志等。要實(shí)現(xiàn)將日志寫到管道只需要將配置中日志文件部分的內(nèi)容替換為“|程序名“即可,例如:
# compressed logs
CustomLog "|/usr/bin/gzip -c >> /var/log/access_log.gz" common
這樣就可以實(shí)用apache自帶的輪循工具:rotatelogs來對日志文件進(jìn)行輪循。rotatelogs基本是用來按時(shí)間或按大小控制日志的。
CustomLog "|/www/bin/rotatelogs /www/logs/secfocus/access_log 86400" common
上面的示例中apache訪問日志被發(fā)送給程序rotatelogs,rotatelogs將日志寫入/www/logs/secfocus/access_log,并每隔86400秒(一天)對日志進(jìn)行一次輪循。輪循以后的文件名為/www/logs/secfocus/access_log.nnnn,這里nnn是開始記錄日志的時(shí)間。因此為了將日志按天對齊就需要在凌晨00:00啟動(dòng)服務(wù),使得每天輪循得到的日志剛好是完整一天的日志,以提供給訪問統(tǒng)計(jì)分析程序進(jìn)行處理。如果是00:00開始生成新的日志,那么輪循得到的日志就是access_log.0000。
4.3 使用cronolog實(shí)現(xiàn)日志輪循
首先需要下載和安裝cronolog,可以到http://www.cronolog.org下載最新版本的cronolog。下載完畢以后,解壓安裝即可,方法如下所示:
[root@mail root]# tar xvfz cronolog-1.6.2.tar.gz
[root@mail root]# cd cronolog-1.6.2
[root@mail cronolog-1.6.2]# ./configure
[root@mail cronolog-1.6.2]# make
[root@mail cronolog-1.6.2]# make check
[root@mail cronolog-1.6.2]# make install
這就完成了cronolog的配置和安裝,默認(rèn)情況下cronolog是安裝在/usr/local/sbin下。
修改apache日志配置命令如下所示:
CustomLog "|/usr/local/sbin/cronolog /www/logs/secfocus/%w/access_log" combined
這里%w表示按照日期星期幾在不同的目錄下保存日志,這種方式會(huì)保存一周的日志。為了進(jìn)行日志分析,需要每天將該日志文件拷貝(或移動(dòng),如果不希望保存一周的日志)到一個(gè)固定的位置以方便日志分析統(tǒng)計(jì)文件進(jìn)行處理,實(shí)用crontab –e,如下添加定時(shí)任務(wù):
5 0 * * * /bin/mv /www/logs/secfocus/`date -v-1d +\%w`/access_log /www/logs/secfocus/access_log_yesterday
這樣再使用日志統(tǒng)計(jì)分析程序的對文件access_log_yesterday進(jìn)行處理。
對于使用負(fù)載均衡技術(shù)的大型站點(diǎn),就存在多個(gè)服務(wù)器的訪問日志的合并處理問題.對于這種情況,各個(gè)服務(wù)器定義或移動(dòng)日志文件時(shí)就不能使用access_log_yesterday了,就應(yīng)該帶上服務(wù)器編號(hào)了,例如服務(wù)器IP地址等信息以區(qū)分。然后在各個(gè)服務(wù)器上運(yùn)行網(wǎng)站鏡像和備份服務(wù)rsyncd(參考文章” 用rsync實(shí)現(xiàn)網(wǎng)站鏡像和備份”,ttp://www.linuxaid.com.cn/engineer/ideal/article/rsync.htm),然后將每個(gè)服務(wù)器每天的安裝配置文件通過rsync下載到專門進(jìn)行訪問統(tǒng)計(jì)分析的服務(wù)器上進(jìn)行合并。
合并多個(gè)服務(wù)器的日志文件,例如:log1 log2 log3并輸出到log_all中的方法是:
sort -m -t " " -k 4 -o log_all log1 log2 log3
-m: 使用 merge優(yōu)化算法,-k 4表示根據(jù)時(shí)間進(jìn)行排序,-o表示將排序結(jié)果存放到指定的文件中。
五、日志統(tǒng)計(jì)分析程序webalizer的安裝和配置
webalizer是一個(gè)高效的、免費(fèi)的web服務(wù)器日志分析程序。其分析結(jié)果是HTML文件格式,從而可以很方便的通過web服務(wù)器進(jìn)行瀏覽。Internet上的很多站點(diǎn)都使用webalizer進(jìn)行web服務(wù)器日志分析。Webalizer具有以下一些特性:
- 是用C寫的程序,所以其具有很高的運(yùn)行效率。在主頻為200Mhz的機(jī)器上,webalizer每秒鐘可以分析10000條記錄,所以分析一個(gè)40M大小的日志文件只需要15秒。
- webalizer支持標(biāo)準(zhǔn)的一般日志文件格式(Common Logfile Format);除此之外,也支持幾種組合日志格式(Combined Logfile Format)的變種,從而可以統(tǒng)計(jì)客戶情況以及客戶操作系統(tǒng)類型。并且現(xiàn)在webalizer已經(jīng)可以支持wu-ftpd xferlog日志格式以及squid日志文件格式了。
- 支持命令行配置以及配置文件。
- 可以支持多種語言,也可以自己進(jìn)行本地化工作。
- 支持多種平臺(tái),比如UNIX、linux、NT, OS/2 和 MacOS等。
上圖是webalizer生成的訪問統(tǒng)計(jì)分析報(bào)表第一頁的內(nèi)容,這里包含每個(gè)月的平均訪問量的表格和條形圖統(tǒng)計(jì)分析情況。點(diǎn)擊每個(gè)月分,可以得到這個(gè)月每天的詳細(xì)統(tǒng)計(jì)信息。
5.1 安裝
在安裝以前首先需要確保系統(tǒng)已經(jīng)安裝有g(shù)d庫,可以使用:
[root@mail root]# rpm -qa|grep gd
gd-devel-1.8.4-4
gdbm-devel-1.8.0-14
gdbm-1.8.0-14
sysklogd-1.4.1-8
gd-1.8.4-4
來確認(rèn)系統(tǒng)已經(jīng)安裝有g(shù)d-deve和gd兩個(gè)rpm包。
安裝webalizer有兩種方式,一種是下載源代碼來安裝,一種是直接使用rpm包來安裝。
使用rpm包方式安裝非常簡單,從rpmfind.net找到webalizer包,下載以后:
rpm –ivh webalizer-2.01_10-1.i386.rpm
即可實(shí)現(xiàn)安裝。
對于源代碼方式首先需要從http://www.mrunix.net/webalizer/下載,然后安裝,首先解開源代碼包:
tar xvzf webalizer-2.01-10-src.tgz
在生成的目錄中有個(gè)lang目錄,該目錄中保存了各種語言文件,但是只有繁體中文版本,可以自己轉(zhuǎn)換成簡體,或者自己重新翻譯一下。然后進(jìn)入生成的目錄:
cd webalizer-2.01-10
./configure
make --with-language=Chinese
make install
編譯成功后,會(huì)在/usr/local/bin/目錄下安裝一個(gè)webalizer可執(zhí)行文件。
5.2 配置和運(yùn)行
對webalizer運(yùn)行的控制可以通過配置文件或者在命令行指定參數(shù)的兩種方式進(jìn)行。而使用配置文件方式是比較簡單和靈活的,適用于自動(dòng)web服務(wù)器日志統(tǒng)計(jì)分析的應(yīng)用環(huán)境。
webalizer的默認(rèn)配置文件為/etc/webalizer.conf,當(dāng)啟動(dòng)Webalizer時(shí)沒有使用“-f“選項(xiàng)時(shí),Webalizer就會(huì)尋找文件/etc/webalizer.conf,也可以使用“-f”來指定配置文件(當(dāng)服務(wù)器有時(shí),就需要配置多份不同的webalizer配置文件,不同的的webalizer使用不同的配置文件。Webalizer.conf配置文件中需要修改的配置選項(xiàng)如下:
LogFile /www/logs/secfocus/access_log
用來指示配置文件的路徑信息,webalizer會(huì)將該日志文件作為輸入進(jìn)行統(tǒng)計(jì)分析;
OutputDir /www/htdocs/secfocus/usage
用來指示生成的統(tǒng)計(jì)報(bào)表的保存目錄,在前面我們使用alias,使得用戶可以使用http://www.secfocus.com/usage/來訪問統(tǒng)計(jì)報(bào)表。
HostName
用來指示主機(jī)名,統(tǒng)計(jì)報(bào)表中會(huì)引用該主機(jī)名。
其他選項(xiàng)就無需修改,配置文件修改完畢以后,就需要在定時(shí)webalizer,每天生成當(dāng)日的統(tǒng)計(jì)分析。
以root身份運(yùn)行:crontab –e 進(jìn)入定時(shí)運(yùn)行任務(wù)編輯狀態(tài),加入如下任務(wù):
5 0 * * * /usr/local/bin/webalizer –f /etc/secfocus.webalizer.conf
15 0 * * * /usr/local/bin/webalizer –f /etc/tomorrowtel.webalizer.conf
我們這里假設(shè)系統(tǒng)運(yùn)行有兩個(gè),并分別定義了日志分析配置文件secfocus.webalizer.conf和tomorrowtel.webalizer.conf。這樣我們定義在凌晨00:05對secfocus的日志進(jìn)行統(tǒng)計(jì)分析;在凌晨00:15對tomorrowtel的日志進(jìn)行統(tǒng)計(jì)分析。
然后第二天分別使用http://www.secfocus.com/usage/和http://www.tomorrowtel.com/usage來察看各自的日志分析報(bào)表。
六、保護(hù)日志統(tǒng)計(jì)分析報(bào)告不被未授權(quán)用戶訪問
我們肯定不會(huì)希望自己網(wǎng)站訪問統(tǒng)計(jì)信息隨意被別人瀏覽,因此需要將usage目錄保護(hù)起來,只允許合法用戶訪問。這里可以采用apache自帶的基本的認(rèn)證機(jī)制,配置以后再連接這個(gè)地址就會(huì)需要用戶提供密碼才能訪問該頁面:
1、條件
在配置文件中對目錄"/"應(yīng)該設(shè)置為:
DocumentRoot /www/htdocs/secfocus/
AccessFileName .htaccess
AllowOverride All
2、需求
需求:限制對http://www.secfocus.com/usage/的訪問,要求用戶認(rèn)證才能訪問。這里設(shè)置用戶為"admin",口令為"12345678"。
3、使用htpasswd建立用戶文件
htpasswd -c /www/.htpasswd admin
此程序會(huì)詢問用戶"admin"的口令,你輸入"12345678",兩次生效。
4、建立.htaccess文件
用vi在/www/logs/secfocus/usage/目錄下建立一個(gè)文件.htaccess,寫入以下幾行:
AuthName admin-only
AuthType Basic
AuthUserFile /www/.htpasswd
require user admin
5、測試
這時(shí)候通過瀏覽器訪問就會(huì)彈出框請求輸入用戶名和口令,這時(shí)候輸入admin、12345678就可以才可以訪問訪問日志統(tǒng)計(jì)分析報(bào)表
- linux服務(wù)器下完美解決無法刪除虛擬主機(jī)文件或文件夾
- thinkphp項(xiàng)目部署到Linux服務(wù)器上報(bào)錯(cuò)“模板不存在”如何解決
- linux vps服務(wù)器進(jìn)程kswapd0與events/0消耗大量CPU的問題
- 探討如何減少Linux服務(wù)器TIME_WAIT過多的問題
- linux服務(wù)器中的遠(yuǎn)程訪問問題小結(jié)
- 關(guān)于linux服務(wù)器下vsftpd的一些問題
- web服務(wù)器程序運(yùn)行出現(xiàn)亂碼問題的解決方法
- web服務(wù)器集群(多臺(tái)web服務(wù)器)session同步、共享的3種解決方法
- windows7服務(wù)器上weblogic啟動(dòng)失敗異常解決方法
- Linux Web服務(wù)器網(wǎng)站故障分析常用命令
相關(guān)文章
win2003 iis6 Rewrite權(quán)限設(shè)置問題 解決了 大家共享 2003NTFS用戶 你不看肯定開不開
win2003 iis6 Rewrite權(quán)限設(shè)置問題 解決了 大家共享 2003NTFS用戶 你不看肯定開不開...2007-07-07Apache rewrite重寫規(guī)則的常見應(yīng)用
---- 本文旨在提供如何用Apache重寫規(guī)則來解決一些常見的URL重寫方法的問題,通過常見的實(shí)例給用戶一些使用重寫規(guī)則的基本方法和線索。2008-03-03