简介:awstats是在Sourceforge上发展很快的一个基于Perl的WEB日志分析工具,它可以为我们提供访问量,访问次数,页面浏览量,点击数,数据流量等

awstats网站http://awstats.sourceforge.net/

 

我的虚拟机环境:Red Hat Enterprise Linux Server release 5.8 Apache/2.4.2 我的Web是编译安装的哦,大家注意路径哦

 

实验要求:主机:172.16.22.1 域名:www.test.com

通过awstats统计www.test.com的访问信息,并提供web页面查看

 

请检查perl环境是否安装了

   
   
   
   
  1. [root@linuxsed ~]# perl -v 
  2.  
  3. This is perl, v5.8.8 built for i386-linux-thread-multi 
  4.  
  5. Copyright 1987-2006, Larry Wall 
  6.  
  7. Perl may be copied only under the terms of either the Artistic License or the 
  8. GNU General Public License, which may be found in the Perl 5 source kit. 
  9.  
  10. Complete documentation for Perl, including FAQ lists, should be found on 
  11. this system using "man perl" or "perldoc perl".  If you have access to the 
  12. Internet, point your browser at http://www.perl.org/, the Perl Home Page.
  13. 我们这里已经安装了哦 

安装与配置awstats

   
   
   
   
  1. [root@linuxsed ~]# unzip awstats-6.95.zip -d /usr/local/  /-d表示解压到指定目录里/
  2. [root@linuxsed ~]# cd /usr/local/ 
  3. [root@linuxsed local]# mv awstats-6.95 awstats 
  4. [root@linuxsed awstats]# chmod -R 755 *  /为了防止后面出现权限错误,我们给了755权限/


执行脚本,出现安装界面

    
    
    
    
  1. [root@linuxsed awstats]# ./usr/local/awstats/tools/awstats_configure.pl  
  2.  
  3. ----- AWStats awstats_configure 1.0 (build 1.8) (c) Laurent Destailleur ----- 
  4. This tool will help you to configure AWStats to analyze statistics for 
  5. one web server. You can try to use it to let it do all that is possible 
  6. in AWStats setup, however following the step by step manual setup 
  7. documentation (docs/index.html) is often a better idea. Above all if: 
  8. - You are not an administrator user, 
  9. - You want to analyze downloaded log files without web server, 
  10. - You want to analyze mail or ftp log files instead of web log files, 
  11. - You need to analyze load balanced servers log files, 
  12. - You want to 'understand' all possible ways to use AWStats... 
  13. Read the AWStats documentation (docs/index.html). 
  14.  
  15. -----> Running OS detected: Linux, BSD or Unix 
  16. Warning: AWStats standard directory on Linux OS is '/usr/local/awstats'. 
  17. If you want to use standard directory, you should first move all content 
  18. of AWStats distribution from current directory: 
  19. /usr/local/awstats 
  20. to standard directory: 
  21. /usr/local/awstats 
  22. And then, run configure.pl from this location. 
  23. Do you want to continue setup from this NON standard directory [yN] ? y  <---选择y,同意安装到默认路径下
  24.  
  25. -----> Check for web server install 
  26.   Found Web server Apache config file '/etc/httpd/httpd.conf' 
  27.  
  28. -----> Check and complete web server config file '/etc/httpd/httpd.conf' 
  29.   Add '<Directory>' directive 
  30.   AWStats directives added to Apache config file. 
  31.  
  32. -----> Update model config file '/usr/local/awstats/wwwroot/cgi-bin/awstats.model.conf' 
  33.   File awstats.model.conf updated. 
  34.  
  35. -----> Need to create a new config file ? 
  36. Do you want me to build a new AWStats config/profile 
  37. file (required if first install) [y/N] ?y   <---选择y,同意创建一个新的对象配置文件
  38.  
  39. -----> Define config file name to create 
  40. What is the name of your web site or profile analysis ? 
  41. Example: www.mysite.com 
  42. Example: demo 
  43. Your web site, virtual server or profile name: 
  44. > www.test.com  <---填写网站的域名
  45.  
  46. -----> Define config file path 
  47. In which directory do you plan to store your config file(s) ? 
  48. Default: /etc/awstats 
  49. Directory path to store config file(s) (Enter for default): 
  50. > 直接按回车键,创建awstats的默认配置文件
  51.  
  52. -----> Create config file '/etc/awstats/awstats.www.test.com.conf' 
  53.  Config file /etc/awstats/awstats.www.test.com.conf created. 
  54.  
  55. -----> Restart Web server with '/sbin/service httpd restart' 
  56. AH00557: httpd: apr_sockaddr_info_get() failed for linuxsed 
  57. AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message 
  58. Stopping httpd:                                            [  OK  ] 
  59. Starting httpd:                                            [  OK  ] 
  60.  
  61. -----> Add update process inside a scheduler 
  62. Sorry, configure.pl does not support automatic add to cron yet. 
  63. You can do it manually by adding the following command to your cron: 
  64. /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.test.com 
  65. Or if you have several config files and prefer having only one command: 
  66. /usr/local/awstats/tools/awstats_updateall.pl now 
  67. Press ENTER to continue...  <---"回车"继续
  68.  
  69. A SIMPLE config file has been created: /etc/awstats/awstats.www.test.com.conf 
  70. You should have a look inside to check and change manually main parameters. 
  71. You can then manually update your statistics for 'www.test.com' with command: 
  72. > perl awstats.pl -update -config=www.test.com 
  73. You can also read your statistics for 'www.test.com' with URL: 
  74. > http://localhost/awstats/awstats.pl?config=www.test.com 
  75.  
  76. Press ENTER to finish... <---"回车"继续,并结束配置

修改awstats日志配置文件 
   
   
   
   
  1. [root@linuxsed awstats]# vim /etc/awstats/awstats.www.test.com.conf  
  2. #LogFile="/var/log/httpd/mylog.log" /这个是你需要做的哪个网站的访问日志(apache存放日志)/ 
  3. LogFile="/usr/local/apache/logs/access_log" 
  4.  
  5. SiteDomain="www.test.com"  /这个是需要访问的域名一般在安装的时候,已经修改好了,这里不需要改动/ 
  6.  
  7. DirData="/var/lib/awstats" /这个是awstats的数据存放地方,可以改变,也可以不改变/ 
  8. 保存退出 

 

建立awstats数据存放目录
    
    
    
    
  1. [root@linuxsed awstats]# mkdir -p /var/lib/awstats /这个就是上面的DirData的路径/

 

查看/etc/httpd/httpd.conf里面的配置是否有以下内容    

     
     
     
     
  1. Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/" 
  2. Alias /awstatscss "/usr/local/awstats/wwwroot/css/" 
  3. Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/" 
  4. ScriptAlias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/" 
  5.  
  6.  
  7. <Directory "/usr/local/awstats/wwwroot"> 
  8.     Options None 
  9.     AllowOverride None 
  10.     Require all granted 
  11. Directory> 
  12. 注意:我的web服务器版本是Apache/2.4.2,授权方式Require all granted,你的web服务器要是Apache/2.2的就不要修改配置文件/etc/httpd/httpd.conf

查看cgi模块是否开启

     
     
     
     
  1. LoadModule cgi_module modules/mod_cgi.so 
  2. 注意:这个主要是执行perl的

 

生成数据库 
      
      
      
      
  1. [root@linuxsed awstats]# cd /usr/local/awstats/wwwroot/cgi-bin/ 
  2. [root@linuxsed cgi-bin]# ./awstats.pl -update -config=www.test.com 
  3. Create/Update database for config "/etc/awstats/awstats.www.test.com.conf" by AWStats version 6.95 (build 1.943) 
  4. From data in log file "/usr/local/apache/logs/access_log"... 
  5. Phase 1 : First bypass old records, searching new record... 
  6. Searching new records from beginning of log file... 
  7. Phase 2 : Now process new records (Flush history on disk after 20000 hosts)... 
  8. Jumped lines in file: 0 
  9. Parsed lines in file: 30703 
  10.  Found 0 dropped records, 
  11.  Found 22 corrupted records, 
  12.  Found 0 old records, 
  13.  Found 30681 new qualified records. 
  14.  
  15. 注意:如果你这步提示日志格式错误,请把apache的access_log删除重新建立就OK了 

 

可以将以下命令加入到crontab中执行,根据你网站的更新的频率和时间 
       
       
       
       
  1. [root@linuxsed ~]# crontab -e 
  2. 30   5   *   *   *  /usr/local/awstats/wwwroot/cgi-bin/./awstats.pl -update -config=www.test.com &>/dev/null
  3.  

 

关闭selinux防火墙和重启一下web服务器

        
        
        
        
  1. [root@linuxsed cgi-bin]# setenforce 0 
  2. [root@linuxsed cgi-bin]# service iptables stop 
  3. [root@linuxsed cgi-bin]# service httpd restart 

最后测试访问
        
        
        
        
  1. http://www.test.com/awstats/awstats.pl?config=www.test.com /查看web统计日志的信息/ 

 

awstats日志工具配置_第1张图片