使用AWStats分析Nginx和Apache日志
使用AWStats分析Nginx和Apache日志作者:于雷/分类:Apache,Nginx/Tag:AWStats
文章目录
[隐藏]
[*] AWStats简介
[*] AWStats安装
AWStats配置
AWStats简介
Awstats是一个免费非常简洁而且强大有个性的统计工具。它可以统计您站点的如下信息:
一:访问量,访问次数,页面浏览量,点击数,数据流量等
二:精确到每月、每日、每小时的数据
三:访问者国家
四:访问者IP
五:Robots/Spiders的统计
六:纺客持续时间
七:对不同Filestype的统计信息
八:Pages-URL的统计
九:访客操作系统浏览器等信息
十:其它信息(搜索关键字等等)
下面我们来在CentOS配置AWStats来分析Nginx和Apache日志。
AWStats安装
[*] cd/tmp
[*] wgethttp://prdownloads.sourceforge.net/awstats/awstats-7.0.tar.gz
[*] tarxzfawstats-7.0.tar.gz
[*] mvawstats-7.0/usr/local/awstats
[*] cd/usr/local/awstats/tools
[*] mkdir/etc/awstats/var/lib/awstats
AWStats配置
执行awstats_configure.pl脚本进行配置。
[*] perlawstats_configure.pl
配置过程如下:
Configfilepath('none'toskipwebserversetup):
none
----->Needtocreateanewconfigfile?
DoyouwantmetobuildanewAWStatsconfig/profile
file(requirediffirstinstall)?y
----->Defineconfigfilenametocreate
Whatisthenameofyourwebsiteorprofileanalysis?
Example:www.mysite.com
Example:demo
Yourwebsite,virtualserverorprofilename:
>blog.domain.com
----->Defineconfigfilepath
Inwhichdirectorydoyouplantostoreyourconfigfile(s)?
Default:/etc/awstats
Directorypathtostoreconfigfile(s)(Enterfordefault):
>回车
接着需要编辑配置文件awstats.www.centos.bz.conf。
[*] vi/etc/awstats/awstats.www.centos.bz.conf
只需要定义日志的路径,如:
[*] LogFile="/home/centos/log/access.log"
复制css和icon目录到网站根目录。
[*] cp-R/usr/local/awstats/wwwroot/css/var/www/html
[*] cp-R/usr/local/awstats/wwwroot/icon/var/www/html
手动执行命令更新日志统计数据库及生成静态文件到目录/var/www/html/awstats:
[*] /usr/local/awstats/tools/awstats_buildstaticpages.pl-config=www.centos.bz-update-lang=cn-awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl-dir=/var/www/html/awstats
之后你就可以使用http://ip或域名/awstats/awstats.blog.domain.com.html访问日志统计页面。
添加脚本awstats_buildstaticpages.pl到cron定时生成日志统计页面。
[*] crontab-e
[*] 5823***/usr/local/awstats/tools/awstats_buildstaticpages.pl-config=www.centos.bz-update-lang=cn-awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl-dir=/home/www/default/awstats
awstats_buildstaticpages.pl脚本使用说明:
语法:awstats_buildstaticpages.pl(awstats_options)
awstats_options可选参数为:
-config=configvalue:定义配置文件,如blog.domain.com,就会搜索/etc/awstats/awstats.blog.domain.com.conf文件。
-update:该选项定义生成静态页面之前先更新数据库。
-lang:统计页面的语言,如-lang=cn,语言为中文。
awstatsbuildstaticpages_options可选参数为:
-awstatsprog=pathtoawstatspl:定义awstats.pl路径。
-dir:定义输出静态页面的目录。
参考:http://awstats.sourceforge.net/docs/awstats_setup.html
正常情况下是用apache进行页面访问的,但是由于字符集的原因可以会显示乱码问题,解决方法如下:
配置awstats后,运行一切正常
如果打开AWStats会显示:
Error:Pluginloadforplugin'decodeutfkeys'failedwithreturncode:Error:Can'tlocateURI/Escape.pmin@INC(@INCcontains:/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(eval4)line1.
这是因为缺少Perl的URI:Escape模块
下载安装URI:Escape模块
wgethttp://search.cpan.org/CPAN/authors/id/G/GA/GAAS/URI-1.36.tar.gz
解压缩文件
tarzxvfURI-1.36.tar.gz
进入解压缩后目录
cdURI-1.36
然后perlMakefile.PL
make
makeinstall
安装后
再找到/etc/awstats/awstats.blog.domain.com.conf
进掉前面的“#”
#LoadPlugin="decodeutfkeys"
如果还是运行不正常,请修改一下apche的默认字符集,apache默认的字符集是UTF-8,而awstats使用的字符集是gbk,修改/etc/httpd/conf/httpd.conf
把下面一行修改成:AddDefaultCharsetgbk
AddDefaultCharsetUTF-8
然后运行正常了
接下来如果对需要访问的页面进行用户名与密码控制的话,可以利用apache自带的工具进行操作,方法如下:vi/etc/httpd/conf/httd.conf
DocumentRoot/var/www/html
ServerNameblog.domain.com
authnameweb
authtypebasic
authuserfile/etc/httpd/.htpasswd
requirevalid-user
在系统环境下执行下面命令,目的是产生需要访问的用户名与密码:
htpasswd-cm/etc/httpd/.htpasswdxiechunli
如果需要系统自身的用户,可以执行如下命令:
cut-d:-f1-2/etc/shadow>>/etc/httpd/.htpasswd
页:
[1]