biboshouyu 2009-09-25
Apache日志分析工具--AWStats6.9安装使用1、事先安装好Apache
2、安装awstats的命令(将awstats安装在/opt/awstats目录)
mkdir-p/var/lib/awstats
cd/opt
sudowgethttp://prdownloads.sourceforge.net/awstats/awstats-6.9.tar.gz
sudotarzxvfawstats-6.9.tar.gz
sudomvawstats-6.9awstats
cdawstats/tools/
sudo perl awstats_configure.pl3、Perl脚本awstats_configure.pl安装过程(以下内容引用AWStats英文使用说明)
(1)
----->RunningOSdetected:Linux,BSDorUnix
Warning:AWStatsstandarddirectoryonLinuxOSis'/usr/local/awstats'.
Ifyouwanttousestandarddirectory,youshouldfirstmoveallcontent
ofAWStatsdistributionfromcurrentdirectory:
/opt/awstats
tostandarddirectory:
/usr/local/awstats
Andthen,runconfigure.plfromthislocation.
Do you want to continue setup from this NON standard directory [yN] ?这时选择y回车。
(2)-----> 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:\Programfiles\apachegroup\apache\conf\httpd.conf
Config file path ('none' to skip web server setup):第一次使用请输入Apache的httpd.conf路径,例如/opt/sina/apache/conf/httpd.conf以后如果再使用perl awstats_configure.pl生成配置文件,则可以输入none跳过。
(3)
----->Checkandcompletewebserverconfigfile'/opt/sina/apache/conf/httpd.conf'
Warning:YouApacheconfigfilecontainsdirectivestowrite'common'logfiles
Thismeansthatsomefeaturescan'twork(os,browsersandkeywordsdetection).
Do you want me to setup Apache to write 'combined' log files [y/N] ?选择y,将日志记录方式由CustomLog /yourlogpath/yourlogfile common改为更详细的CustomLog /yourlogpath/yourlogfile combined
(4)
----->Updatemodelconfigfile'/opt/awstats/wwwroot/cgi-bin/awstats.model.conf'
File awstats.model.conf updated.-----> Need to create a new config file ?
DoyouwantmetobuildanewAWStatsconfig/profile
file (required if first install) [y/N] ?创建一个新的配置文件,选择y
(5)
----->Defineconfigfilenametocreate
Whatisthenameofyourwebsiteorprofileanalysis?
Example:www.mysite.com
Example:demo
Yourwebsite,virtualserverorprofilename:
>输入站点名称,例如sina
(6)
----->Defineconfigfilepath
Inwhichdirectorydoyouplantostoreyourconfigfile(s)?
Default:/etc/awstats
Directorypathtostoreconfigfile(s)(Enterfordefault):
>输入AWStats配置文件存放路径,一般直接回车则使用默认路径/etc/awstats
(7)
----->Addupdateprocessinsideascheduler
Sorry,configure.pldoesnotsupportautomaticaddtocronyet.
Youcandoitmanuallybyaddingthefollowingcommandtoyourcron:
/opt/awstats/wwwroot/cgi-bin/awstats.pl-update-config=sina
Orifyouhaveseveralconfigfilesandpreferhavingonlyonecommand:
/opt/awstats/tools/awstats_updateall.plnow
Press ENTER to continue...按回车键继续
(8)
ASIMPLEconfigfilehasbeencreated:/opt/awstats/etc/awstats.sina.conf
Youshouldhavealookinsidetocheckandchangemanuallymainparameters.
Youcanthenmanuallyupdateyourstatisticsfor'sina'withcommand:
>perlawstats.pl-update-config=sina
Youcanalsoreadyourstatisticsfor'sina'withURL:
> http://localhost/awstats/Press ENTER to finish...
按回车键结束
4、修改awstats.sina.conf配置
vi /etc/awstats/awstats.sina.conf按?,在之后输入要搜索的内容LogFile="
然后按Ins键,找到LogFile="/var/log/httpd/access_log"
改为要分析的Apache日志路径与文件名。(1)多日志合并分析(例:新浪播客其中两台服务器2月6日的日志30.0206.vblog.log与31.0206.vblog.log)
LogFile="/opt/awstats/tools/logresolvemerge.pl/var/apachelogs/30.0206.vblog.log/var/apachelogs/31.0206.vblog.log|"
或
LogFile="/opt/awstats/tools/logresolvemerge.pl /var/apachelogs/*.0206.vblog.log|"(2)分析使用gzip压缩过的日志文件LogFile="gzip -d </var/log/apache/access.log.gz|"
5、更新分析报告
perl/opt/awstats/wwwroot/cgi-bin/awstats.pl-config=sina-update
在实践过程中,确实有该问题,只要删除掉历史日志记录即可
如果出现以下错误提示,很大可能是Apache的Log文件中存在以前CustomLog/yourlogpath/yourlogfilecommon生成的日志,删除掉这些行的日志即可:
Thismeanseachlineinyourwebserverlogfileneedtohave"combinedlogformat"likethis:
111.22.33.44 - - [10/Jan/2001:02:14:14 +0200] "GET / HTTP/1.1" 200 1234"http://www.fromserver.com/from.htm" "Mozilla/4.0 (compatible; MSIE5.01; Windows NT 5.0)"6、查看分析报告http://localhost/awstats/awstats.pl?config=sina
这里的sina对应/etc/awstats/awstats.sina.conf中的sina
7.awstats自动生成日志分析报告
需要root用户权限,或者可以操作crontab -e命令的用户权限:
(1)键入:crontab -e
(2)输入以下系统定时任务:
0 5 * * * /opt/awstats/wwwroot/cgi-bin/awstats.pl -config=www.google.com -update
每天凌晨5点执行日志分析报告,opt/awstats/wwwroot/cgi-bin/awstats.pl为awstats安装目录下的perl命令,www.goolge.com为你安装awstats时指定的网站域名。关于crontab命令的用法,可以google一下。
8.awstats基础安全设置
(1)linux系统中必须存在用户,如果不存在可以按以下方式操作
groupadd awsuser #增加awstats用户组
useradd -g awsuser awstats #增加awstats用户,并归属awsuser用户组
(2)在apache安装目录下新建文件夹
mkdir passwd
(3)运行如下代码产生用户名为awstats用户及其密码
opt/apache/bin/htpasswd -c /opt/apache/passwd/passwords awstats
键入密码和验证密码即可
(4)配置httpd.conf
<Directory "/opt/awstats-6.9/wwwroot">Options NoneAllowOverride NoneOrder allow,denyAllow from allAuthType BasicAuthName "Restricted Files"AuthUserFile /usr/local/apache2/password/passwordsRequire user awsspring</Directory>
为awstats日志查看添加密码验证
www.firnow.com 时间 : 2009-09-30 作者:匿名 编辑:小张 点击: 62 [ 评论 ]
[root@webserverconf]#vihttpd.conf <Files"awstats.pl"> AuthTypeBasic AuthName"awstataccess" AuthUserFile"/etc/awstats/htpasswd" Requirevalid-user </Files> [root@webserverconf]#/usr/local/httpd/bin/htpasswd-c/etc/awstats/htpasswdadmini Newpassword: Re-typenewpassword: Addingpasswordforuseradmini [root@webserverconf]#/etc/rc.d/init.d/apachestop [root@webserverconf]#/etc/rc.d/init.d/apachestart 然后访问http://www.test.com/awstats/awstats.pl?config=www.test.com就要密码才能访问了 |
附:
(2)测试环境:在DELLPowerEdge1950/2950服务器+redhatas4.6/5.0asLinux操作系统+Apache2.2.11下测试通过。