一     awstats 简介
1 awstats是一个基于跑Perl 的web日志分析工具,其可以跨平台,界面友好,分析内容详尽,并支持多个语言操作界面,
2    awstats 优点
awstats能够分析web统计的所有数据,包括访问量,访问这者数量,页面,点击,高峰时段,访问者的操作系统,浏览器类型及其版本,搜索引擎,关键字,机械访问,无效链接等
3  当然awstats 不仅能够分析web 日志,同样能够分析ftp日志,还能够分析mail 日志当然这需要在其配置文件中更改其日志类型:
    LogType来指定日志类型,

     w代表web log file 

    F 代表ftp log file

    M 代表mail log file 

   S 代表streaming log file

  当然awstats 还能够合并日志并进行分析,及压缩日志文件如access.log.gz

4  awstats 的缺点,占用系统的资源较多,尤其是占用的系统的内存
二    awstats 的安装配置

     1  在安装前一定要确认系统上是否有perl 环境,httpd ,如果没有需要安装perl软件包,当然在此就不在安装perl ,

     2  安装awstats

        #tar xvf awstats-7.0.tar.gz

        #mv awstats-7.0 /usr/local/awstats

        #cd /usr/local/awstats/tools

        # perl awstats_configure_pl  

         ----- AWStats awstats_configure 1.0 (build 1.9) (c) Laurent Destailleur -----

This tool will help you to configure AWStats to analyze statistics for

one web server. You can try to use it to let it do all that is possible

in AWStats setup, however following the step by step manual setup

documentation (docs/index.html) is often a better idea. Above all if:

- You are not an administrator user,

- You want to analyze downloaded log files without web server,

- You want to analyze mail or ftp log files instead of web log files,

- You need to analyze load balanced servers log files,

- You want to 'understand' all possible ways to use AWStats...

Read the AWStats documentation (docs/index.html).

 

-----> Running OS detected: Linux, BSD or Unix

 
-----> Check for web server install
 

Enter full config file path of your Web server.

Example: /etc/httpd/httpd.conf
Example: /usr/local/apache2/conf/httpd.conf

Example: c:\Program files\apache group\apache\conf\httpd.conf

Config file path ('none' to skip web server setup):

> /etc/httpd/conf/httpd.conf    <------  注: 该处是apache 主配置文件的路径
 

-----> Check and complete web server config file '/etc/httpd/conf/httpd.conf'

 Add 'Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/"'

 Add 'Alias /awstatscss "/usr/local/awstats/wwwroot/css/"'

 Add 'Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/"'

 Add 'ScriptAlias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/"'

 Add '<Directory>' directive

 AWStats directives added to Apache config file.
 

-----> Update model config file '/usr/local/awstats/wwwroot/cgi-bin/awstats.model.conf'

 File awstats.model.conf updated.
 

-----> Need to create a new config file ?

Do you want me to build a new AWStats config/profile

file (required if first install) [y/N] ? y  <--- 注: 选择是不是同一创建一个新的对象配置文件
 
-----> Define config file name to create

What is the name of your web site or profile analysis ?

Example: www.mysite.com
Example: demo

Your web site, virtual server or profile name:

> www.frank.com   <------- 注: 该处为统计对像的创建代号

 
-----> Define config file path

In which directory do you plan to store your config file(s) ?

Default: /etc/awstats

Directory path to store config file(s) (Enter for default):

> /etc/awstats   <--------- 注: 将awstats 的配置文件放在/etc/awstats 路径下
 

-----> Create config file '/etc/awstats/awstats.www.frank.com.conf'

 Config file /etc/awstats/awstats.www.frank.com.conf created.

 

-----> Restart Web server with '/sbin/service httpd restart'   注: 重启apache 服务器

Stopping httpd: [ OK ]
Starting httpd: [ OK ]
 

-----> Add update process inside a scheduler

Sorry, configure.pl does not support automatic add to cron yet.

You can do it manually by adding the following command to your cron:

/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.frank.com

Or if you have several config files and prefer having only one command:

/usr/local/awstats/tools/awstats_updateall.pl now

Press ENTER to continue...    <-------- #按Enter
 
 

A SIMPLE config file has been created: /etc/awstats/awstats.www.frank.com.conf

You should have a look inside to check and change manually main parameters.

You can then manually update your statistics for 'www.frank.com' with command:

> perl awstats.pl -update -config=www.frank.com

You can also read your statistics for 'www.frank.com' with URL:

> http://localhost/awstats/awstats.pl?config=www.frank.com

 
Press ENTER to finish...  <--------- 注: 按Enter
  3   修改以下各项

   #cd  /etc/awstats

   #vim   awstats.www.frank.com.conf

       LogFile="/var/log/httpd/mylog.log"

       修改为apache 的日志文件

        LogFile=“/var/log/httpd/access_log”

   4    手动创建目录
#mkdir /var/lib/awstats 注:该目录为awstats的数据库库存放目录
  5    创建awstats 初始化数据库库

          #perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl   -config=www.frank.com –update

     注 :问题

perl ../wwwroot/cgi-bin//awstats.pl -config=puppet.frank.com

Create/Update database for config "/etc/awstats/awstats.puppet.frank.com.conf" by AWStats version 7.0 (build 1.970)

From data in log file "/usr/local/awstats/tools/logresolvemerge.pl /var/log/httpd/*_log |"...

sh: /usr/local/awstats/tools/logresolvemerge.pl: Permission denied

Phase 1 : First bypass old records, searching new record...

Searching new records from beginning of log file...

Error: Command for pipe '/usr/local/awstats/tools/logresolvemerge.pl /var/log/httpd/*_log |' failed

Setup ('/etc/awstats/awstats.puppet.frank.com.conf' file, web server or permissions) may be wrong.

Check config file, permissions and AWStats documentation (in 'docs' directory)

解决方法是
#chmod u+x /usr/local/awstats/tools/*.pl 

 6   确保在apche 的主配置文件尾部有如下配置,莫热门情况下在安装配置awstats 后 默认是已经配置好了

    #

# Directives to allow use of AWStats as a CGI

#

Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/"

Alias /awstatscss "/usr/local/awstats/wwwroot/css/"

Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/"

ScriptAlias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/"

 

#

# This is to permit URL access to scripts/files in AWStats directory.

#

<Directory "/usr/local/awstats/wwwroot/">

    Options None

    AllowOverride None

    Order allow,deny

    Allow from all

</Directory>

  这是您查看一下awstats 对网站的分析情况

     http://IP/awstats/awstats.pl?config =www.frank.com 

    注: config 后面为您要分析的URL
 
三    安装awstats的插件能
     GeoIP和Geo::IPfree都免费的是国家/IP的映射表,比通过DNS反相解析域名得到的统计准确,而且速度快。GeoIP的API都是免费的,缺省库是免费的,收费的是它的数据更新服务。Geo::IPfree不仅代码是公开的,而且库数据也是公开的

      1  安装 GeoIP

        #tar xvf GeoIP-1.4.6.tar.gz

        #cd GeoIP-1.4.6

        #./configure

        #make && make install

      2  安装Geo-IP

         #tar xvf Geo-IP-1.38.tar.gz

         #cd Geo-IP-1.38

         #perl Makefile.PL

         #make && make install

      安装Geo-IPfre

         #tar xvf Geo-IPfree-0.2.tar.gz

         #cd Geo-IPfree-0.2

         #perl Makefile.PL

         #make  && make install

四    安装jawstats

   1   jawstats 是awstats 一款PHP外挂系统,jawstats 是在awstats生成的数据基础上构造出更加清晰美观的关于网站访问数据的图表,表格,并且安装简便,快捷。

   2  安装 jawstats
    #tar xvf jawstats-0.7beta.tar.gz
    #cd jawstats-0.7beta.
    #mv ./*   /usr/local/awstats/wwwroot
    #chown –R apache /usr/local/awstats/jawstats
   3   配置jawstats
     #cd /usr/local/awstats/jawstats

     #cp   config.dist.php config.php

     #vim   config.php

      修改下面几项

     $aConfig["site1"] = array( 注: 该处site1 要修改为你的配置文件名,如awstats.www.frank.com.conf 当然这里就改为 www.frank.com

    "statspath"   => "/path/to/data/",     注: 该处修改为awstats数据文件的路径,当然在安装awstats 时默认情况下是在/var/lib/awstats

    "updatepath" => "/path/to/awstats.pl/",     注: 该处为awstat s.pl 执行文件所在的路径

    "siteurl"     => "http://www.my-1st-domain.com",

    "sitename"    => "",
    "theme"       => "default",
    "fadespeed"   => 250,
    "password"    => "my-1st-password",
    "includes"    => "",
    "language"    => "en-gb"
 );
 修改为

   $aConfig["puppet.frank.com"] = array( 

    "statspath"   => "/var/lib/awstats/",

    "updatepath" => "/user/local/awstats/wwwroot/cgi-bin/awstats.pl/",

    "siteurl"     => "http://puppet.frank.com",
    "sitename"    => "This is my main website",
    "theme"       => "default",
    "fadespeed"   => 250,
    "password"    => "frank",
    "includes"    => "",
    "language"    => "zh-cn"
 );
 4  由于jawstats 配置有一个小一点的bug 需要需改一下
   #vim  index.php
   #修改前
  <?
    // output booleans for javascript
    function BooleanToText($bValue) {
 
 #修改后
<?php
    // output booleans for javascript 
    function BooleanToText($bValue) {      
 5  修改apache的主配置文件

<Directory "/usr/local/awstats/wwwroot">

</Directory>
 修改为

 <Directory "/usr/local/awstats/wwwroot/jawstats">

</Directory>
   当然如果是考虑安装您还可以配置通过https 的web 及配置基于用户的web 服务

    6  重启apache

        #service httpd restart

          在浏览器输入

          http://IP/jawstats/