在Ubuntu伺服器上設定AWStats

三年多前ㄚ琪寫了監控網站紀錄檔,後來發現Peter’s blog消失了,而且內容寫的可能有點不清楚,所以ㄚ琪再一次找來Ubuntu Tutorials的Configuring AWStats on Ubuntu Server來幫助大家瞭解一下設定的步驟,當然我不會建議你使用statcounter的免費服務,我只會建議AWStats,因為到現在我還是覺得這最好用。

安裝

當然仍如之前的安裝方式。

自動設定

從教學裡面你可以發現有一個awstats_configure.pl檔可以為你設定,我個人是忘了是否有使用這樣的設定,但既然有這樣的服務,為何不用:

sudo perl /usr/share/doc/awstats/examples/awstats_configure.pl

接下來ㄚ琪會討論手動的設定,但是如果你有建議的話,我可能會更有興趣加一些內容的!

手動設定

我是手動設定我的系統的,我會概述在下面,這裡唯一的需要就是你可以存取apache2 logs,或是你有每一個虛擬網域(假如有使用的話)的訪客日誌位置,更多關於虛擬網域的訪客日誌可以參考Christer Edwards的Configuring Virtual Hosting on Ubuntu with Apache2這一篇英文文章,當然如果你想瞭解這一篇的中文的話,也可以給我一個迴響,我會儘快幫你處理。

第一步就是新增你網域的awstats.conf檔,這可以用/etc/awstats.conf來複製或改名,並且給一個有意義的名稱:

sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.domain.tld.conf

我新增了一個檔案,使用這樣的語法awstats + domain.tld + conf來設定我伺服器上的每一個網域,每一個網域也都有他們自己的一個log檔案。

接下來我們要針對那個網域編輯新的/etc/awstats 自訂值,要點就是你要看一下檔案的內容:

  • LogFile=”/path/to/your/domain/access.log”
  • LogFormat=1 (this will give you more detailed stats)
  • SiteDomain=”domain.tld”
  • HostAliases=”www.domain.tld localhost 127.0.0.1″

一旦你做了這些更改,你就會想要建立最初的統計值,這個統計值是從你的機器上目前的log中產生的,我可以這樣使用:

sudo /usr/lib/cgi-bin/awstats.pl -config=domain.tld -update

這樣子可以針對awstats + domain.tld + conf這樣的檔案來掃描/etc/awstats 資料夾,讀取config來產生輸出,你應該在這裡可以看到一些輸出,而且它所花費的時間端賴於你的log檔大小,可以從幾分鐘到幾個小時,每一次的執行後會變得比較小,它只會更新資訊,但是第一次設定好時會花比較多的時間。

設定Apache來顯示AWStats

在這裡我們的統計應該已經產生(假如沒有再回頭檢查一次是否有遺漏的!),但是我們需要一個方法來看這些統計,我們會需要設定Apache2來顯示這些統計,我用的方法是在我的 apache2.conf使用Include,而不是搞亂預設的config檔,這通常是我比較喜愛的方法。

Apache2.conf 在靠近底下的地方有一行Include /etc/apache2/conf.d/,它會在那裡讀取額外的資料,我所要做的就是在/etc/apache2/conf.d/ 目錄下新增一個檔案叫做 awstats,並且填入下面的內容:

Alias /awstatsclasses "/usr/share/awstats/lib/"
Alias /awstats-icon/ "/usr/share/awstats/icon/"
Alias /awstatscss "/usr/share/doc/awstats/examples/css"
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
ScriptAlias /awstats/ /usr/lib/cgi-bin/
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch

基本上這樣可以新增一些存取的別名,以及定義cgi-bin的路徑,一旦儲存了你就應該能夠重新啟動Apache2 ,接著我們就能存取我們的統計,重啟動Apache2使用:

sudo /etc/init.d/apache2 restart

現在你應該能存取你的統計使用:

http://domain.tld/awstats/awstats.pl

假定你的統計產生時沒有錯誤,Apache2 在你重啟動服務時沒有顯示錯誤,你應該可以看見統計報告。

持續更新你的統計

最後一件事就是你可能想樣透過cron來更新你的統計,這允許你定期更新你的網站統計,不需要你另外來干預,我所做的就是新增一行到我的/etc/crontab 檔案告訴AWStats每十分鐘更新一次,用這樣的更新間隔來更新幾十個網站,系統負載還是很小,要每十分鐘更新一次可以這樣的增加下面一行:

*/10 * * * * root /usr/lib/cgi-bin/awstats.pl -config=domain.tld -update >/dev/null

重複這一行,更新domain.tld值為你想要持續更新的任何站台。

防護統計

假如你的統計只想提供個人使用,你可以參考Christer Edwards的這一篇英文文章Limiting Access To Websites & Directories with .htaccess,有中文的需要迴響給我知道。

感謝你看到這裡,很快就可以離開了,但最好的獎勵行動就是按一下幫我分享或留言,感恩喔~

點我分享到Facebook

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *