你完全不必耐心看完所有內(nèi)容:簡要安裝說明如下
安裝
http://sourceforge.net/projects/awstats/ 下載安裝包后:
GNU/Linux:tar zxf awstats-version.tgz
awstats的腳本和靜態(tài)文件缺省都在wwwroot目錄下:將cgi-bin目錄下的文件都部署到 cgi-bin/目錄下:/home/apache/cgi-bin/awstats/
mv awstats-version/cgi-bin /path/to/apache/cgi-bin/awstats
把圖標等文件目錄復制到WEB的HTML文件發(fā)布目錄下,例如:/home/apache/htdocs/ 下發(fā)布
更多的批量更新腳本等在tools 目錄下,可以一并放到cgi-bin/awstats/ 目錄下
升級國內(nèi)主要搜索引擎和蜘蛛定義,安裝GeoIP的應用庫:C
http://www.maxmind.com/download/geoip/api/c/ 解包,編譯安裝
perl -MCPAN -e 'install "Geo::IP"' 或者使用純Perl包 perl -MCPAN -e 'install "Geo::IP::PurePerl"'
下載GeoIP/GeoIPCityLite包:解包并部署到awstats目錄下
http://www.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
http://www.maxmind.com/download/geoip/database/GeoIP.dat.gz
配置
將缺省awstats.model.conf 命名成common.conf
修改其中的一些配置選項:
LoadPlugin="decodeutfkeys"
LoadPlugin="geoip GEOIP_STANDARD /home/apache/chedong.com/cgi-bin/awstats/GeoIP.dat"
LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /home/apache/chedong.com/cgi-bin/awstats/GeoLiteCity.dat"
創(chuàng)建awstats下創(chuàng)建:data 目錄用于統(tǒng)計數(shù)據(jù)輸出
按照一下樣例設置配置文件:
Include "common.conf"
LogFile="/home/apache/logs/access_log.%YYYY-24%MM-24%DD-24"
SiteDomain="www.chedong.com"
HostAliases="chedong.com"
DefaultFile="index.html"
DirData="/home/apache/cgi-bin/awstats/data/"
內(nèi)容摘要:AWStats的使用簡介和配置一些改進說明。很高興看到在AWStats 6.3版本開始:中文用戶基本上已經(jīng)只需要將配置文件中將 LoadPlugin="decodeutfkeys" 啟用基本上就沒有什么中文搜索引擎的統(tǒng)計問題了,目前增加了# Minor chinese search engines 'baidu\.com','search\.sina\.com','search\.sohu\.com',這3個搜索引擎。包含了針對國內(nèi)主要搜索引擎和蜘蛛定義的補丁(解包后覆蓋lib\目錄下的原程序目錄即可)
日志統(tǒng)計系統(tǒng)在站點的用戶行為分析中扮演了重要的角色,尤其是對于來自搜索引擎的關鍵詞 訪問統(tǒng)計:是很有效的用戶行為分析數(shù)據(jù)來源。隨著互聯(lián)網(wǎng)多年的發(fā)展,WEB日志統(tǒng)計工具已經(jīng)越來越成熟,功能也越來越豐富。其中有很多是開放源代碼的, AWStats就是其中非常優(yōu)秀的一款。
AWStats: Advanced Web Statistics
AWStats是在Sourceforge上發(fā)展很快的一個基于Perl的WEB日志分析工具。相對于另外一個非常優(yōu)秀的開放源代碼的日志分析工具Webalizer,AWStats的優(yōu)勢在于:
- 界面友好:可以根據(jù)瀏覽器直接調(diào)用相應語言界面(有簡體中文版)
參考輸出樣例:http://www.chedong.com/cgi-bin/awstats/awstats.pl?config=chedong
- 基于Perl:并且很好的解決了跨平臺問題,系統(tǒng)本身可以運行在GNU/Linux上或Windows上(安裝了ActivePerl后);分析的日志直接支持Apache格式 (combined)和IIS格式(需要修改)。Webalizer雖然也有Windows平臺版,但目前已經(jīng)缺乏 維護;
AWStats完全可以實現(xiàn)用一套系統(tǒng)完成對自身站點不同WEB服務器:GNU/Linux/Apache和Windows/IIS服務器的統(tǒng)一統(tǒng)計。
- 效率比較高:AWStats輸出統(tǒng)計項目比Webalizer豐富了很多,速度仍可以達到Webalizer的1/3左右,對于一個日訪問量 百萬級的站點,這個速度都是足夠的;
- 配置/定制方便:系統(tǒng)提供了足夠靈活但缺省也很合理的配置規(guī)則,需要修改的缺省配置不超過3,4項就可以開始運行,而且修改和擴展的插件還是 比較多的;
- AWStats的設計者是面向精確的"Human visits"設計的,因此很多搜索引擎的機器人訪問都被過濾掉了,因此有可能比其他日志統(tǒng)計工具統(tǒng)計的數(shù)字要低,來自公司內(nèi)部的訪問也可以通過IP過濾 設置過濾掉。
- 提供了很多擴展的參數(shù)統(tǒng)計功能:使用ExtraXXXX系列配置生成針對具體應用的參數(shù)分析會對產(chǎn)品分析非常有用。
更多與其他工具:Webalizer, analog的比較請參考:
http://awstats.sourceforge.net/#COMPARISON
AWStats安裝備忘
AWStats的運行模式是這樣的:
- 分析日志:運行后將這樣的日志統(tǒng)計結果歸檔到一個AWStats的數(shù)據(jù)庫(純文本)里;
- 然后是輸出:分兩種形式
- 一種是通過cgi程序讀取統(tǒng)計結果數(shù)據(jù)庫輸出;
- 一種是運行后臺腳本將輸出導出成靜態(tài)文件;
以下是2個針對單個站點日志統(tǒng)計例子:
一個是在GNU/Linux上通過CGI方式的輸出,
一個是在Windows 2000上的基于靜態(tài)頁面的導出
下載/安裝
http://sourceforge.net/projects/awstats/ 下載安裝包后:
GNU/Linux:tar zxf awstats-version.tgz
awstats的腳本和靜態(tài)文件缺省都在wwwroot目錄下: 將cgi-bin目錄下的文件都部署awstats.pl程序到/home/apache/cgi-bin/awstats/ 下
mv awstats-version/cgi-bin /path/to/apache/cgi-bin/awstats
#把圖標等文件目錄復制到WEB的HTML文件發(fā)布目錄下:/home/apache/htdocs/ 下發(fā)布
更多的批量更新腳本等在tools 目錄下,可以一并放到cgi-bin/awstats/ 目錄下,
Windows 2000:按照后臺腳本模式運行,直接解包,然后移動到D:\AWStats目錄下
把圖標icon目錄復制到IIS的發(fā)布目錄下:inetpub/icon
數(shù)據(jù)源日志格式和按天的截斷規(guī)則
- 對于Apache:日志格式好設置:設置成combined格式即可,日志截斷麻煩一點:需要安裝cronolog工具,將日志設置成按天截斷:
CustomLog "|/usr/local/sbin/cronolog /path/to/apache/logs/access_log.%Y%m%d" combined
比如:logs/access_log.20030326
日志是壓縮格式,可以使用gzip -d < /home/apache/logs/access_log.%YYYY-24%MM-24%DD-24.gz | 動態(tài)解壓縮統(tǒng)計。
- 對于IIS:缺省有比較好的日志按天截斷規(guī)則,但是IIS的日志格式比較不適合AWStats統(tǒng)計,
因此最好直接去掉所有日志字段,然后嚴格按照以下列表設置
- 日期 date
- 時間 time
- 客戶IP地址 c-ip
- 用戶名 cs-username
- 方法 cs-method
- URI資源 cs-uri-stem
- 協(xié)議狀態(tài) sc-status
- 發(fā)送字節(jié)數(shù) sc-bytes
- 協(xié)議版本 cs-version
- 用戶代理 cs(User-Agent)
- 參照 cs(Referer)
相比IIS缺省設置:
減少的有:
增加的有:
- 發(fā)送字節(jié)數(shù)
- 協(xié)議版本
- 參照
配置文件的命名規(guī)則:awstats.sitename.conf
AWStats的主程序awstats.pl會自動根據(jù)站點名調(diào)用相應站點的配置文件:awstats.sitename.conf
比如:運行./awstats.pl -config=chedong 調(diào)用的就是同目錄下的 awstats.chedong.conf 配置文件;
如果沒有指定-config,還會找當前目錄下的awstats.conf或者/etc/awstats.conf作為缺省配置文件。
所以最好把缺省的awstats.model.conf 重命名成 awstats.yoursite.conf;比如:awstats.chedong.conf,
對于多個站點的統(tǒng)計,AWStats的配置文件包含功能還是非常有用的,我們可以把通用的配置放在一個文檔中,然后用(5.4版本以后開始支持) Include配置將通用配置包含在各個具體配置文件的頭部,然后用其他配置覆蓋通用配置中的相應屬性,比如:
Include="common.conf"
LogFile="/path/to/bbs/access_log"
SiteName="bbs.chedong.com"
最少的配置文件修改:LogFile SiteDomain LogFormat
對于在GNU/Linux上統(tǒng)計Apache日志只需修改:LogFile SiteDomain這2個選項
- GNU/Linux LogFile="/path/to/apache/logs/access_log.%YYYY-24%MM-24%DD-24"
Windows 2000 LogFile="d:\iis_logs\W3SV3\ex%YY-24%MM-24%DD-24.log"
這個配置的意思是用24小時前的年份,月份,日期拼出的日志文件名;
- SiteDomain="www.chedong.com"
站點的名稱,缺省是空的,如果為空,AWStats將拒絕運行;
- 對于統(tǒng)計IIS日志需要多修改一個:
LogFormat=2
缺省值是1:Apache日志,2是IIS日志
其他需要注意的事項:
AWStats缺省不過濾swf文件,會把.swf算成PageView,所以如果站點上swf文件主要是廣告的話最好還是要過濾掉:
日志分析
./awstats.pl -update -config=sitename -lang=cn
比如:./awstats.pl -update -config=chedong
會自動調(diào)用awstats.chedong.conf這個配置文件
統(tǒng)計輸出
GNU/Linux http://localhost/cgi-bin/awstats/awstats.pl?config=chedong
Windows 2000 http://localhost/awstats/awstats.chedong.html
日志統(tǒng)計自動運行
GNU/Linux上:crontab -e: 每天8點10分運行
#update awstats
10 8 * * * (cd /path/to/apache/cgi-bin/awstats/; ./awstats.pl -update -config=chedong)
Windows 2000上:設置每天8點10分運行
D:\Perl\bin\perl.exe d:\AWStats\tools\awstats_buildstaticpages.pl -update -config=chedong -lang=cn -dir=c:\inetpub\awstats\ -awstatsprog=d:\awstats\wwwroot\cgi-bin\awstats.pl
多站點日志統(tǒng)計
AWStats自帶了一個批處理工具:tools/awstats_updateall.pl,可以批量地遍歷一個目錄下所有地配置文件并運行統(tǒng) 計。因此剩下的工作就主要是日志的同步問題了。
針對多個站點,很多配置選項是重復的,如果每個配置文件都修改維護起來會很麻煩,AWStats從5.4版本開始提供了配置文件包含的功能,所以我們可 以配置一個通用配置,比如:common.conf
然后其他站點的配置設置為:可以通過后面的選項覆蓋和缺省不一致的配置。
awstats.bbs.chedong.conf
Include "chedong.common.conf"
LogFile "/path/to/bbs_log"
SiteName "bbs.chedong.com"
awstats.www.chedong.conf
Include "chedong.common.conf"
LogFile "/path/to/www_log"
SiteName "www.chedong.com"
HostAliases="chedong.com"
統(tǒng)計指標說明
- 參觀者:按來訪者不重復的IP統(tǒng)計,一個IP代表一個參觀者;
- 參觀次數(shù):一個參觀者可能1天之內(nèi)參觀多次(比如:上午一次,下午一次),所以按一定時間內(nèi)(比如:1個小時),不重復的IP數(shù)統(tǒng)計,參觀者 的訪問次數(shù);
- 網(wǎng)頁數(shù):不包括圖片,CSS, JavaScript文件等的純頁面訪問總數(shù),但如果一個頁面使用了多個幀,每個幀都算一個頁面請求;
- 文件數(shù):來自瀏覽器客戶端的文件請求總數(shù),包括圖片,CSS,JavaScript等,用戶請求一個頁面是,如果頁面中包含圖片等,所以對服 務器會發(fā)出多次文件請求,文件數(shù)一般遠遠大于文件數(shù);
- 字節(jié):傳給客戶端的數(shù)據(jù)總流量;
- 來自REFERER中的數(shù)據(jù):日志中的參考(REFERER)字段,記錄了訪問相應網(wǎng)頁之前地址,因此如果用戶是通過搜索引擎的搜索結果點擊 進入網(wǎng)站的,日志中就會有用戶在相應搜索引擎的查詢地址,這個地址中就可以通過解析將用戶查詢使用的關鍵詞提取出來:
比如:
2003-03-26 15:43:58 123.123.123.123 - GET /index.html 200 192 HTTP/1.1 Mozilla/4.0+(compatible;+MSIE+5.01;+Windows+NT+5.0) http://www.google.com/search?q=chedong
AWStats在搜索引擎的關鍵短語和關鍵詞統(tǒng)計方面的功能還是比較完整的:可以對全世界3百多種機器爬蟲進行識別,并且可以識別大部分主流國際化搜索引 擎和很多地區(qū)的本地語言搜索引擎。
Hacking AWStats
基于地理信息的插件安裝:
GeoIP 和 Geo::IPfree(awstats 5.5+)
GeoIP和Geo::IPfree都免費的是國家/IP的影射表,比通過DNS反相解析域名得到的統(tǒng)計準確,而且速度快。GeoIP的API都是免費 的,缺省庫是免 費的,收費的是它的數(shù)據(jù)更新服務。Geo::IPfree不僅代碼是公開的,而且?guī)鞌?shù)據(jù)也是公開的。
GeoIP安裝:
先下載C庫:GeoIP C解包后
%./configure; make
#make install
然后下載Perl庫:GeoIP Perl解包后
%perl MakeFile.PL; make
#make install
Geo::IPfree安裝:
下載Geo::IPfree解 包后
%perl Makefile
%make
#make install
配置:通過在配置文件中啟用GEOIP相關插件:
LoadPlugin="geoip GEOIP_STANDARD /home/apache/chedong.com/cgi-bin/awstats/GeoIP.dat"
LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /home/apache/chedong.com/cgi-bin/awstats/GeoLiteCity.dat"
MaxMind目前免費提供了GeoIP和GeoIPCityLite數(shù)據(jù)包:可以定期每個月從以下地址下載
http://www.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
http://www.maxmind.com/download/geoip/database/GeoIP.dat.gz