系统redhat AS 4.2

软件包:

awstats6.5         wget http://awstats.sourceforge.net/files/awstats-6.5.tar.gz

cronolog-1.6.2.tar.gz http://cronolog.org/download/index.html

GeoIP-1.3.8.tar.gz     http://www.maxmind.com/download/geoip/api/c/

Geo-IP-1.27.tar.gz    http://www.maxmind.com/download/geoip/api/perl/

Geo-IPfree-0.2.tar.gz http://search.cpan.org/~gmpassos/Geo-IPfree-0.2/

XWhois              wget http://search.cpan.org/CPAN/auth ... -XWhois-0.90.tar.gz

###############################软件介绍#############################

awstats1.65

AWStats 是一个专门用来分析Web 站台记录档(log)的GPL 授权软体,目前也已开始支援分

析FTP  站台及邮件伺服器的记录档,在Web  伺服器软体的部分可以分析IIS                              的(W3C  log

format)记录档、Apache 的(NCSA combined/XLF/ELF log  format  or  common/CLF log  format)

记录档,以及其他大部分的web,proxy,wap,streaming 伺服器所产 的纪录档。

统计指标说明

1.参观者:按来访者不重复的IP 统计,一个IP 代表一个参观者.

2.参观次数:一个参观者可能1 天之内参观多次 (比如:上午一次,下午一次),所以按一

定时间内(比如:1 个小时),不重复的IP 数统计,参观者的访问次数.

3.网页数:不包括图片,CSS, JavaScript 文件等的纯页面访问总数,但如果一个页面使用了

----------------------- Page 2-----------------------

多个帧,每个帧都算一个页面请求.

4.文件数:来自浏览器客户端的文件请求总数,包括图片,CSS,JavaScript 等,用户请求一

个页面是,如果页面中包含 图片等,所以对服务器会发出多次文件请求,文件数一般远远

大于文件数.

5.字节:传给客户端的数据总流量.

cronolog-1.6.2.tar.gz

使用cronolog 可以使apache  日志按时间分割,易于管理和分析。(例如:access_log.20041226)

GeoIP-1.3.8.tar Geo-IP-1.27.tar Geo-IPfree-0.2.tar

IP 地理信息的插件安装

GeoIP 和Geo::IPfree 都免费的是国家/IP 的影射表,比通过DNS 反相解析域名得到的统计准

确,而且速度快。GeoIP 的API 都是免费的,缺省库是免费的,收费的是它的数据更新服务。

Geo::IPfree 不仅代码是公开的,而且库数据也是公开的,因此,以自己定制.

XWhois

可以进行IP 反解析的插件

安装顺序

1.cronolog-1.6.2.tar.gz

2.GeoIP-1.3.8.tar.gz

3.Geo-IP-1.27.tar.gz

4.Geo-IPfree-0.2.tar.gz

5.XWhois

6.awstats6.5

#####################################         开      始       安       装      配       置

###############################

1.cronolog-1.6.2.tar.gz

  tar zxvf cronolog-1.6.2.tar.gz

   cd cronolog-1.6.2

  ./configure

   make && make install

安装完成以后需要对apache 进行适当配置,修改httpd.conf 文件

----------------------- Page 3-----------------------

vi /usr/local/apache2/conf/http.conf  (rpm 安装的apache  vi /etc/httpd/conf/http.conf)

修改此项设置

CustomLog "|/usr/local/sbin/cronolog /opt/apache/logs/access_log.%Y%m%d" combined

如果使用了虚拟主机

NameVirtualHost 1.1.1.1:80

<VirtualHost 1.1.1.1:80>

    ServerAdmin wdxcdell@163.com

    DocumentRoot /site

    ServerName 1.1.1.1

    ErrorLog logs/ 1.1.1.1-error_log

    CustomLog    "|/usr/local/sbin/cronolog  /usr/local/apache2/logs/1.1.1.1-access_log.%Y%m%d"

combined

</VirtualHost>

配置后的效果

ls /usr/loca/apache/logs/

1.1.1.1-access_log.20060715    1.1.1.1-error_log

2.GeoIP-1.3.8.tar.gz

   tar zxvf GeoIP-1.3.8.tar.gz

     cd  GeoIP-1.3.8

     ./configure

   make && make install

3. Geo-IP-1.27.tar.gz

   tar zxvf Geo-IP-1.27.tar.gz

    cd Geo-IP-1.27

    perl MakeFile.PL

    make && make install

    (提示:如果此包译出错也可以不用会理会,能成功最好了,^_^,其实Geo-IPfree                                                安装

成功也可以)

----------------------- Page 4-----------------------

4.Geo-IPfree-0.2.tar.gz

  tar xvzf Geo-IPfree-0.2.tar.gz

    cd Geo-IPfree-0.2

     perl MakeFile.PL

    make && make install

5.XWhois

  tar -xzvf Net-XWhois-0.90.tar.gz

    cd Net-XWhois-0.90

      chmod +x Makefile.PL

     perl MakeFile.PL

    make && make install

6.awstats6.5

tar -xzvf awstats-6.5.tgz

cd awstats-6.5/wwwroot/

#将AWStats  的cgi  目录下的所有文件放到你Apache  的cgi  目录

cp -r cgi-bin/ /usr/loca/apache/cgi-bin/awstats 根据自己apache       安装目录而定,请自行修改。

如是rpm 安装的apache            cp -r cgi-bin/ /var/www/cgi-bin/awstats

#将其他几个目录复制到你Apache  的发布目录

cp -r classes/ css/ icon/ j s/ /var/www/html

#设置配置文件

cd /var/www/cgi-bin/awstats (进入你刚才的目录)

cp awstats.model.conf common.conf     (将默认配置文件更名,供其他配置文件使用)

vi common.conf  (去掉下面几行前面的#)

LoadPlugin="decodeutfkeys"

LoadPlugin="geoip GEOIP_STANDARD"(注意如是前面Geo-IP-1.27.tar.gz 安装失败,此注释

----------------------- Page 5-----------------------

掉此行,并去掉此行注释LoadPlugin="geoipfree"。)

LoadPlugin="hostinfo"

mkdir data (建立一个用于输出分析结果的文件夹)

chmod -R 777 data

vi awstats.aaa.com.conf (建立配置文件)

Include "common.conf"

#apache  日志文件路径

LogFile="/usr/local/apache/logs/ 1.1.1.1-access_log.%YYYY-24%MM-24%DD-24"(注意自己的

时间可能修改为%YYYY-24%MM-24%DD)

SiteDomain="www.aaa.com"

HostAliases="aaa.com"

DefaultFile="index.html"

DirData="/var/www/cgi-bin/awstats/data/"

修改Apache  的httpd.conf

在httpd.conf 中增加

ScriptAlias /awstats/ "/var/www/cgi-bin/awstats/"

运行命令

./awstats.pl -update -config=aaa.com

打开浏览器查看应该可以看到图形了,恭喜你。。。。。

http://1.1.1.1/awstats/awstats.pl?config=aaa.com

创建crontab

crontab -e

00 12 * * * /var/www/cgi-bin/awstats/awstats.pl -update -config=aaa.com

如果不愿意给别人看到此页面,可以设置访问控制。

这个需要Apache mod_auth 模块的支持,先给Apache 安装mod_auth 模块:

./apxs -c -i /usr/local/src/httpd-2.0.4/..../mod_auth.c

----------------------- Page 6-----------------------

再在httpd.conf   中添加

LoadModule auth_module       modules/mod_auth.so

配置需要认证的目录:

<Directory "/var/www/cgi-bin/awstats/">

 AuthType Basic

 AuthName "aaapasswd"

 AuthUserFile /etc/httpd/passwd

 Require user test

</Directory>

运行如下代码产 用户名为test 用户及其密码

/etc/httpd/bin/htpasswd -c /etc/httpd/passwd  test

chown  apache.apache /etc/httpd/passwd

现在重新启 一下你的apache,然后通过浏览器访问,服务器应该提示你输入用户名和密码,

输入密码后,你就可以看到你的日志分析结果了。

此文章的总结借鉴了网上很多文章,感谢你们,特些总结一下,希望可以帮助到兄弟们。。。。
配置awstats后 ,运行一切正常

如果打开AWStats会显示:

Error: Plugin load for plugin 'decodeutfkeys' failed with return code: Error: Can't locate URI/Escape.pm in @INC (@INC contains: /usr/lib/perl5/5.8.7/i686-linux /usr/lib/perl5/5.8.7 /usr/lib/perl5/site_perl/5.8.7/i686-linux /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl . ./lib ./plugins) at (eval 4) line 1.

这是因为缺少 Perl 的 URI:Escape模块

下载安装URI:Escape模块

wget http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/URI-1.36.tar.gz

解压缩文件

tar zxvf URI-1.36.tar.gz

进入解压缩后目录

cd URI-1.36

然后 perl Makefile.PL

make

awstats+Geo-IP安装

cd /usr/local/
wget http://nchc.dl.sourceforge.net/sourceforge/awstats/awstats-6.5.tar.gz
tar -zxvf awstats-6.5.tar.gz
ln -s  /usr/local/awstats-6.5.tar.gz  /usr/local/awstats
cd  /usr/local/awstats/tools
perl ./awstats_configure.pl (按照提示进行安装)
mv /etc/awstats/awstats_mysite.com_conf   /etc/awstats/common.conf
添加新的配置文件:
Include "common.conf"
LogFile="/usr/apache/logs/mysite.net_log"
SiteDomain="www.mysite.net"
HostAliases="mysite.net"

修改apache.conf,加上mysite.net的日志文件
CustomLog logs/mysite.net_log "combined"
添加apache.conf
<VirtualHost **.**.**.**>
ServerName awstats.mysite.com
DocumentRoot /usr/local/awstats/wwwroot/
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/"
<Directory "/usr/local/awstats/wwwroot">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
CustomLog logs/mysite.com_log "combined"
</VirtualHost>

配置Geo-IP:
Geo-IP C-API
wget http://www.maxmind.com/download/geoip/api/c/GeoIP-1.3.8.tar.gz
tar -zxvf GeoIP-1.3.8.tar.gz
cd GeoIP-1.3.8
./configure
make
make install(root)

Geo-IP Perl-API
wget http://www.maxmind.com/download/geoip/api/perl/Geo-IP-1.27.tar.gz
tar -zxvf Geo-IP-1.27.tar.gz
cd Geo-IP-1.27
perl Makefile.PL
make
make install(root)

Geo::IPfree
wget http://search.cpan.org/CPAN/authors/id/G/GM/GMPASSOS/Geo-IPfree-0.2.tar.gz
tar -zxvf Geo-IPfree-0.2.tar.gz
cd Geo-IPfree-0.2
perl Makefile.PL
make
make install(root)

此时报错:
[root @ws Geo-IP-1.27]# perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl --config=mysite.com
Error: Plugin load for plugin 'geoip' failed with return code: Error: Can't locate Geo/IP/PurePerl.pm in @INC (@INC contains: /usr/lib/perl5/5.8.5/i386-linux-thread-multi

Geo-IP-PurePerl
wget http://search.cpan.org/CPAN/authors/id/T/TJ/TJMATHER/Geo-IP-PurePerl-1.14.tar.gz
tar -zxvf Geo-IP-PurePerl-1.14.tar.gz
cd Geo-IP-PurePerl-1.14
perl Makefile.PL
make
make install(root)

Geo-IP C-API ( http://www.maxmind.com/download/geoip/api/c/ )
Geo-IP Perl-API ( http://www.maxmind.com/download/geoip/api/perl/ )
这两个是一组,必须先编译安装C的,再编译安装perl的

Geo::IPfree ( http://search.cpan.org/author/GMPASSOS/Geo-IPfree-0.2/ )
这单独是一个
上面两个不能同时在awstats里面用,否则会报错说冲突

安装国家数据库:
wget http://www.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
MaxMind's GeoLiteCity database
gzip -d GeoLiteCity.dat.gz
复制GeoLiteCity.dat到/usr/local/share/GeoIP/下,然后修改awstats.yoursitenam.conf中的
LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /usr/local/share/GeoIP/GeoLiteCity.dat"

patch:国内主要搜索引擎的搜索结果页定义(源至chedong‘s blog)
http://www.chedong.com/tech/awstats_6.5_patch.tgz
AWStats升级到6.5:补充更新
1 直接复制lib到awstats/lib的下;
2 将GeoIP.dat文件复制到 /usr/local/share/GeoIP/ 下;
3 修改awstats.chedong.conf 成你需要的配置文件;
更新后包含国内主要搜索引擎的搜索结果页定义:search_engines.pm和蜘蛛定义:robots.pm 只需要覆盖原有lib\目录下的文件即可。

NotPageList="css js class gif jpg jpeg png bmp ico swf xml rdf cgi mp3"
LoadPlugin="tooltips"
LoadPlugin="decodeutfkeys"
LoadPlugin="geoip GEOIP_STANDARD /usr/local/share/GeoIP/GeoIP.dat"
再下载最新的GeoIP 国家地址库后,解包放到/usr/local/share/GeoIP/GeoIP.dat下面。