AWStats+Lighttpd配置
此頁由 Linux Wiki使用者Chenxing 於 2012年1月9日 (星期一) 22:59 的最後更改。
出自Linux Wiki
提示:此文已超过 12 年(4732 天)未更新,如发现内容过时或有误,欢迎改进:)
AWStats是一款流行的伺服器日誌分析軟體,Lighttpd是一款輕量級HTTP伺服器軟體。本文介紹在CentOS系統中,用AWStats做Lighttpd日誌分析的方法。
目錄 |
安裝AWStats
可以到AWStats官方網站下載安裝,也可以從發行版提供的軟體倉庫安裝。以CentOS EPEL倉庫中的AWStats為例,AWStats會被安裝到以下文件夾:
- /usr/share/awstats/wwwroot/
- 程序文件夾
- /etc/awstats/
- 配置文件
- /usr/share/awstats/wwwroot/cgi-bin/
- 可執行文件文件夾
AWStats官網的rpm包會將其裝在/usr/local/awstats中。
Lighttpd配置
首先啟用必要的模塊( server.modules )[1]:
- mod_access, mod_accesslog
- 產生log
- mod_cgi
- 運行AWStats
- mod_auth
- (可選)用戶身份認證
- mod_alias
- (可選)虛擬文件夾支持
如果想使用虛擬文件夾訪問AWStats,可加入代碼[2]:
alias.url = ( "/awstatsclasses" => "/usr/share/awstats/wwwroot/classes/", "/awstatscss" => "/usr/share/awstats/wwwroot/css/", "/awstatsicons" => "/usr/share/awstats/wwwroot/icon/", "/awstats/" => "/usr/share/awstats/wwwroot/cgi-bin/", "/icon/" => "/usr/share/awstats/wwwroot/icon/" ) # provide awstats cgi-bin access $HTTP["url"] =~ "/awstats/" { cgi.assign = ( ".pl" => "/usr/bin/perl" ) }
配置完成後,重啟lighttpd
service lighttpd restart
如果一切正常,訪問 http://你的域名/awstats/ ,應該就能看到AWStats的錯誤信息了。
配置AWStats
配置文件一般存在/etc/awstats/,可以從awstats.model.conf複製產生需要的配置文件。
cd /etc/awstats cp awstats.model.conf awstats.目的域名.conf
編輯配置文件,主要注意LogFile(Lighttpd日誌的位置)、SiteDomain(網站域名)、DirData(數據位置,lighttpd要有寫許可權)。DirData所指向的文件夾可能需要手動建立並設置許可權。
LogFile="/var/log/lighttpd/access.log" LogType=W # 支持虚拟主机(多域名)的关键,LogFormat=1是不行的。 LogFormat = "%host %virtualname %logname %time1 %methodurl %code %bytesd %refererquot %uaquot" SiteDomain="foobar" HostAliases="localhost 127.0.0.1 REGEX[foobar$]" # DirData 是存放数据的路径,lighttpd要有写权限。其所指向的文件夹可能需要手动建立并设置权限。
處理數據、查看結果
現在已經可以處理日誌文件了:
/usr/share/awstats/wwwroot/cgi-bin/awstats.pl -update -config=域名
再通過
http://域名/awstats/awstats.pl?config=域名
可以看到分析結果。
定時更新
可以通過crond讓程序每天執行。創建、編輯文件/etc/cron.daily/01awstats,如:
#!/bin/bash AWS=/usr/share/awstats/wwwroot/cgi-bin/awstats.pl # append your domain DOMAINS="linux-wiki.cn www.linux-wiki.cn" # loop through all domains for d in ${DOMAINS} do ${AWS} -update -config=${d} done
其中AWStats.pl的路徑、域名等可按需更改
用戶認證
如果不想公開統計信息,可以設置lighttpd用戶認證。此處介紹一種最簡單的方式:
auth.backend = "plain" # filename of the password storage for plain auth.backend.plain.userfile = "用户名密码文件的完整路径" auth.require = ("/awstats" => ( "method" => "basic", "realm" => "Authentication Awstats Management", "require" => "valid-user" ), )
其中用戶名密碼文件格式很簡單,如
user1:password1 user2:password2
不要更改"valid-user"。
參考資料
- ↑ http://benr75.com/pages/lighttpd_awstats_tutorial
- ↑ http://www.cyberciti.biz/tips/lighttpd-web-server-awstats-tutorial.html
本文对您有帮助?分享给更多朋友!
反馈与讨论
发现文档不全面、有错误却没时间编辑文档?想分享自己的经验或见解?欢迎在此留言、讨论。