当前位置:Linux教程 - Linux文化 - AWStat实现网站访问信息统计

AWStat实现网站访问信息统计


求:查看网站访问量,来源IP所在地,由哪些搜索引擎进入本网站. 目的:通过以上信息可以及时撑握网站的推广和应用状态 ##########################系统环境###################### 系统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文件等的纯页面访问总数,但如果一个页面使用了多个帧,每个帧都算一个页面请求. 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文件

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 ServerAdmin [email protected] 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

配置后的效果 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 安装成功也可以) 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/ js/ /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安装失败,此注释掉此行,并去掉此行注释LoadPlugin="geoipfree"。) LoadPlugin="hostinfo"

mkdir data(建立一个用于输出分析结果的文件夹) chmod -R 777 data vi [url]awstats.aaa.com.conf[/url](建立配置文件) 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

再在httpd.conf 中添加

LoadModule auth_module modules/mod_auth.so

配置需要认证的目录:

AuthType Basic AuthName "aaapasswd" AuthUserFile /etc/httpd/passwd Require user test

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

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

chown apache.apache /etc/httpd/passwd 现在重新启动一下你的apache,然后通过浏览器访问,服务器应该提示你输入用户名和密码,输入密码后,你就可以看到你的日志分析结果了。