awstats的安裝和配置

 一、安裝awstats

1、安裝前準備
awstats有很多的perl腳本,執行這些腳本需要perl的支持,所以先安裝perl
# yum -y install perl
 
2、開始安裝Awstats
最新的版本爲7.0
http://sourceforge.net/projects/awstats/files/AWStats/
在上面的URL可以找到文件的下載地址
 
  1. # tar xf awstats-7.0.tar.gz  
  2. # mv awstats-7.0 /usr/local/awstats 
  3. # cd /usr/local/awstats 
  4. # chmod +x /usr/local/awstats/tools/*.pl 
  5. # chmod +x wwwroot/cgi-bin/*.pl 
  6. # tools/awstats_configure.pl    //開始安裝配置 
  7. 默認配置文件在/etc/awstats/awststs.domain-name.conf 
  8.  
  9. # vim /etc/awstats/awstats.www.domain-name.conf 
  10. 需要修改一下 LogFile ,即你日誌文件的位置 
  11. LogFile="/var/log/nginx/%YYYY-24/%MM-24/access_%YYYY-24%MM-24%DD-24.log" 
  12. LogFormat=1     //日誌格式,這個一定要跟要分析的日誌格式匹配,不然可能分析不出來數據或者分析出來的數據不正確 
  13. LogSeparator=" "    //指定日誌的分割符 
  14. SiteDomain="www.domain-name.com"    //要分析的網站域名 
  15. DirData="/opt/awstats"      //分析完的數據文件存在的位置 

二、使用Awstats分析日誌 

 

使用下面的命令成生Awstats數據,以提供WEB訪問。

我這裏分析的是nginx的日誌,如果是老版本的nginx或者nginx的格式是自己定義的,則需要去改awstats的配置文件,在裏面有定義日誌格式的,跟自己的日誌格式匹配。日誌格式如果不匹配,那麼將會分析不出數據。一般新版本的nginx的日誌格式都是可以直接使用的。

以下的日誌格式是可以直接被awstats7.0分析的

  1. log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ' 
  2.                       '$status $body_bytes_sent "$http_referer" ' 
  3.                       '"$http_user_agent" "$http_x_forwarded_for"'; 

 

  1. 使用下面的命令成生Awstats數據,以提供WEB訪問。 
  2. # /usr/bin/perl /var/www/html/awstats/wwwroot/cgi-bin/awstats.pl -config=www.domain0name.com -update
  3. 如果需要每天自動執行以上的命令,可以加入crontab # crontab -e 00 04 * * * /usr/bin/perl /var/www/html/awstats/wwwroot/cgi-bin/awstats.pl -config=www.domain-name.com -update &>/dev/null 

三、訪問

http://youdomain/awstats/atstats.pl?config=www.domain-name.com

如果使用的apache提供WEB,那麼在安裝的時候,有一步是讓你選擇你的Apache配置文件位置的,Awstats會自動把相關配置添加到apache的配置文件中去

如果沒有指定,則手動添加以下,或者自己添加一個虛擬主機

  1. # vim /etc/httpd/conf/httpd.conf    //添加以下配置 
  2. Alias /awstatsclasses "/var/www/html/awstats/wwwroot/classes/" 
  3. Alias /awstatscss "/var/www/html/awstats/wwwroot/css/" 
  4. Alias /awstatsicons "/var/www/html/awstats/wwwroot/icon/" 
  5. ScriptAlias /awstats/ "/var/www/html/awstats/wwwroot/cgi-bin/" 
  6.  
  7. # This is to permit URL access to scripts/files in AWStats directory. 
  8. <Directory "/var/www/html/awstats/wwwroot"> 
  9.     Options None 
  10.     AllowOverride None 
  11.     Order allow,deny 
  12.     Allow from all 
  13. </Directory> 
# service httpd reload //重新加載apache的配置文件
如果需要對Awstats做用戶登陸控制,可以使用Apache的Basic認證模式
# htpasswd -cm /var/www/html/awstats/htpasswd.user admin
輸入兩次密碼即可
 
  1. # vim /etc/httpd/conf/httpd.conf    //添加以下 
  2. <Files "awstats.pl"> 
  3. AuthName "MingDao awstats" 
  4. AuthType Basic 
  5. AuthUserFile /var/www/html/awstats/htpasswd.user 
  6. Require user admin 
  7. </Files> 
 
# service httpd reload //重新加載apache的配置文件
 

四、Awstats插件

awstats裏默認帶了一些插件,開戶這些插件即可使用,開啓只需要把前面的#號去掉即可,也可以自己安裝一些插件,放在插件所在的目錄/var/www/html/awstats/wwwroot/cgi-bin/plugins,然後在配置文件裏使用以下命令開啓即可
 
LoadPlugin="userinfo"
比較好用的插件有GopIP,graphgooglechartap(谷歌的畫圖接口,目前該項目已經停止,但是可用)
GeoIP這個,可以顯示IP對應的國家,城市。由於是外國人開發的,所以不太好用,這裏可以使用純真IP庫來代替。以下安裝一個插件,做爲例子,其它插件的安裝跟它一樣。
這裏下載純真IP庫:http://www.cz88.net/fox/ipdat.shtml
如果是二進制文件,在windows裏面安裝一下,然後在安裝目錄找到qqwry.dat,上傳至服務器.
放在/usr/local/share/GeoIP/下
然後下載qqhostinfo這個插件,見附件
下載後把插件放在Awstats的插件目錄/var/www/html/awstats/wwwroot/cgi-bin/plugins
# vi /var/www/html/awstats/wwwroot/cgi-bin/plugins/qqhostinfo.pm
修改文件的第13行和17行如下
 
  1. push @INC, "/var/www/html/awstats/wwwroot/cgi-bin/plugins";     #文件第13行 
  2. require "/var/www/html/awstats/wwwroot/cgi-bin/plugins/qqwry.pl";     #文件第17行 
# vi qqwry.pl
 
  1. my $ipfile="/usr/local/share/GeoIP/qqwry.dat";     # 文件第18行 
# chmod 755 qqwry.pl qqhostinfo.pm
 
最終效果如下圖

 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章