http://vbird.dic.ksu.edu.tw/linux_server/0360apache_4.php#other_pkg_awstatsphp
除了 webalizer 以外,我們其實還能夠透過 awstats 這個厲害到不行的 perl 的程式來進行資料分析, 由於這個軟體是以 perl 來執行的,因此請確定你的 mod_perl 已經安裝且 CGI 的執行權限已經啟動了! 這個軟體的特點是:css
官方網站:http://awstats.sourceforge.net/html
官方軟體:http://awstats.sourceforge.net/#DOWNLOADlinux
設定難度:較難,須要有點技巧!web
軟體特點:中文化的很完整,並且該有的都有了,相當炫的一個分析利器!apache
授權模式:GPLvim
這套軟體不但能夠由系統的 cron 來進行分析,甚至還提供瀏覽器直接以 CGI 的方式來即時更新登錄檔吶! 真是厲害厲害!鳥哥個人是比較不喜歡使用瀏覽器來線上更新分析的結果, 因為在你更新分析結果時,怎麼知道系統會不會很忙碌?若是系統正在忙碌中, 這套軟體的分析可也是很耗費系統資源的吶!因此建議直接以 crontab 的方式來處理便可。centos
目前官方網站不但提供 tarball 甚至也提供 RPM 來給使用者下載了!真是方便啊! 可是你還是要注意的,這個軟體曾經因為安全性的問題導致不少網站的掛點, 因此建議你還是把這個軟體的輸出結果放置在受保護的目錄中喔!底下鳥哥以 7.0-1 這個 RPM 版本來說明, 請你自行到官方網站下載吧!(註:檔名為 awstats-7.0-1.noarch.rpm )安全
假設你將這個 RPM 檔案放置到 /root 當中,那麼本身 rpm -ivh filename 去安裝他吧! 不要跟我說你不會 RPM ~鳥哥是會昏倒的~@_@!由於這個 RPM 檔案將 awstats 的資料統統放置到 /usr/local/awstats 當中去了! 為了本身網頁設定上的方便,建議你是能夠這樣作的:ide
# 1. 先安裝後再將 awstats 提供的 Apache 設定資料給他複製到 conf.d 下 [root@www ~]# rpm -ivh awstats-7.0-1.noarch.rpm [root@www ~]# cp /usr/local/awstats/tools/httpd_conf \ > /etc/httpd/conf.d/awstats.conf [root@www ~]# vim /etc/httpd/conf.d/awstats.conf Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/" Alias /awstatscss "/usr/local/awstats/wwwroot/css/" Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/" Alias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/" <Directory "/usr/local/awstats/wwwroot"> Options +ExecCGI AllowOverride AuthConfig<==這裡改爲這樣,因為要保護! Order allow,deny Allow from all </Directory> [root@www ~]# /etc/init.d/httpd restart |
awstats 還真的挺貼心的,因為他釋出的文件當中就有關於 Apache 的設定資料,我們直接將他放到 conf.d/ 那個目錄下並且改名後,從新啟動 Apache 就生效了!真方便。再來則是要針對我們的 WWW 登錄檔來設定啦!設定檔其實是在 /etc/awstats 目錄下,在該目錄下有個範例檔為 awstats.model.conf,其實這個設定檔『檔名』格式為:
awstats.主機名稱.conf
因為鳥哥這部主機名稱為 www.centos.vbird,因此假設主機名稱為 www,因此檔名就應該是 awstats.www.conf 囉!請你將他複製一個新檔,然後這樣作:
[root@www ~]# cd /etc/awstats [root@www awstats]# cp awstats.model.conf awstats.www.conf [root@www awstats]# vim awstats.www.conf# 找到底下這幾行,並且修改一下內容啊:LogFile="/var/log/httpd/access_log" <== 51行:確定登錄檔所在的位置LogType=W <== 63行:針對 WWW 的登錄檔分析LogFormat=1 <==122行:Apache 的登錄檔格式SiteDomain="www.centos.vbird" <==153行:主機的 hostnameHostAliases="localhost 127.0.0.1 REGEX[centos\.vbird$]"DirCgi="/awstats" <==212行:能夠執行 awstats 的目錄DirIcons="/awstatsicons" <==222行:awstats 一些小圖示的目錄AllowToUpdateStatsFromBrowser=0 <==239行:不要利用瀏覽器來更新!Lang="tw" <==905行:重要!這是語系! |
接著開始測試一下是否能夠產生正確的分析資料出來?
[root@www awstats]# cd /usr/local/awstats/wwwroot/cgi-bin [root@www cgi-bin]# perl awstats.pl -config=www -update \ > -output > index.html# 那個 -config 後面接的就是 awstats.www.conf 的意思!會產生 index.html [root@www cgi-bin]# ls -l awstats082011.www.txt <==剛剛才創建的重要資料檔! awstats.pl <==就是剛剛我們下達的執行檔! index.html <==重要輸出首頁檔案 |
接下來讓我們趕緊來創建保護目錄的 .htaccess 檔案吧!請注意,鳥哥這裡假設你已經有密碼檔了, 因此直接創建檔案便可啊!
[root@www ~]# cd /usr/local/awstats/wwwroot [root@www wwwroot]# vi .htaccessAuthName "Protect awstats data"Authtype BasicAuthUserFile /var/www/apache.passwdrequire valid-user |
之後,只要你輸入『http://your.IP/awstats/』,就能夠看到輸出的圖表了!圖表有點像這樣:
事實上,資料很是的多,你能夠自行查閱輸出的結果。在上圖當中的箭頭處,你還能夠本身選擇曾有的月份資料來進行顯示! 最後,將分析的動做規定在天天三點的時候跑,你能夠這樣作:
[root@www ~]# vim /usr/local/awstats/wwwroot/cgi-bin/awstats.shcd /usr/local/awstats/wwwroot/cgi-binperl awstats.pl -config=www -update -output > index.html [root@www ~]# chmod 755 /usr/local/awstats/wwwroot/cgi-bin/awstats.sh [root@www ~]# vim /etc/crontab0 3 * * * root /usr/local/awstats/wwwroot/cgi-bin/awstats.sh |
這樣你就知道你的主機到底有多受歡迎囉! ^_^!另外,再次千萬拜託!這個軟體所在的目錄務必要製做密碼保護!不要隨意釋放出來! 甚至上面提供的一些目錄的連結你均可以根據本身的主機與喜愛來從新修改,會比較安全的啦!