一、配置IIS日志
1、转移IIS日志
打开IIS管理器,右击“本地计算机-网站-默认网站”,选择“属性”
在“网站”选项卡里点击“属性”,然后将C:\WINDOWS\system32\LogFiles\W3SVC1\路径更改为D:\IISLog\W3SVC1
这里顺便把日志记录属性中的扩展信息也修改了,转到“高级”选项卡,根据AWStats官方文档,勾选以下字段:
date
time
c-ip
cs-username
cs-method
cs-uri-stem
cs-uri-query
sc-status
sc-bytes
cs-version
cs(User-Agent)
cs(Referer)
为了安全,要修改D:\IISLog\W3SVC1目录的权限,修改成和原目录一样
SYSTEM权限同Administrators
二、安装ActivePerl
安装过程很简单,一路“下一步”
使用默认位置:C:\Perl\bin
注意别选最下边的那行
安装过程依照机器性能而定,i7-3770不到1分钟
三、在IIS中配置Perl
打开“IIS管理器”,左键点击“WEB服务扩展”,在右边找到“Perl”,确保是允许状态
然后右击“WEB服务扩展”,点击“添加一个新的WEB服务扩展”
在扩展名中填入“perl”然后单击下方的“添加”,
添加文件:C:\Perl\bin\perl.exe "%s",点击“确定”
回到“新建WEB服务扩展”对话框,勾选“设置扩展状态为允许”,点击“确定”
接下来右击“本地计算机-网站-默认网站”,选择“属性”,然后转到“主目录”选项卡,点击“配置”
在“应用程序配置”界面中点击“添加”
依次输入或勾选
可执行文件:C:\Perl\bin\perl.exe "%s"
扩展名:.pl
动作限制为:GET,Post,HEAD
勾选“脚本引擎”和“确认文件是否存在”
点击“确定”
四、安装Awstats
将安装包解压到C盘根目录,结构如下
执行:C:\AWStats\tools\awstats_configure.pl
第一个输入的地方输入:none 表示没有阿帕奇服务器
y 表示要新建一个Profile
192.168.1.7 输入你网站的名字
按回车
按回车结束安装
顺利的话,会在”C:\AWStats\wwwroot\cgi-bin“下面生成一个awstats.192.168.1.7.conf文件。
五、配置IIS虚拟目录
右击“默认网站”,选择“新建”,点击“虚拟目录”
点击“下一步”
别名填写:awlp,点击“下一步”
路径为C:\AWStats\wwwroot\cgi-bin,点击“下一步”
权限设置为:读取、运行脚本、执行,点击“下一步”
完成创建,点击“完成”
虚拟目录awlpicon创建方法同上
路径为C:\AWStats\wwwroot\icon
权限设置也一样
右击新建的“awlp”和“awlpicon”虚拟目录,勾选“脚本资源访问”
六、修改awstats.192.168.1.7.conf,
文件位置在:C:\AWStats\wwwroot\cgi-bin,用除记事本之外的编辑器打开。
LogFile修改为:LogFile="D:\IISLog\W3SVC1\ex%YY-0%MM-0%DD-0.log",修改之前确保D:\IISLog\W3SVC1\这个路径已经存在。
LogType 默认值(W)即可,W表示 web log ,S 为流日志,M为邮件日志,F为FTP日志。
LogFormat 一定要修改成:LogFormat="date time cs-method cs-uri-stem cs-username c-ip cs-version cs(User-Agent) cs(Referer) sc-status sc-bytes",不要用2
AllowToUpdateStatsFromBrowser=0 设置为1,表示允许从浏览器手动更新,但需要修改日志目录的权限为”IUSR_XXX” 读,设置为0表示只允许从命令行更新
SiteDomain=“192.168.1.7”同样的这里改成你自己的域名。这个在建立时已经改好了
将LoadPlugin=”timezone +2″修改为LoadPlugin=”timezone +8″,并将最前面的“#”号删除。
在HostAliases="192.168.1.7 www.192.168.1.7 127.0.0.1 localhost",双引号里面就可以填入多个别名,用空格分开,这样不管是IP访问还是域名访问awstats 都可以统计得到了。
AllowAccessFromWebToFollowingIPAddresses="192.168.1.1"只有指定IP才能访问,一样,多个IP用空格分开
DirCgi="/awlp" 对应虚拟目录名也应该是awlp
DirIcons="/awlpicon" 对应虚拟目录名也应该是awlpicon
DirData="C:\AWStats\wwwroot\cgi-bin\txt" 用于存放被perl整理以后的日志库,是一个.txt文件,默认和awstats.pl在一个目录下边,但生成的文件较多,所以放在其他目录下边
七、使用纯真IP数据库给分析结果添加IP归属地
首先需要下边3个文件
qqwry.pl 插件 http://www.ieasy.org/download/qqwry.pl下载地址已失效
qqhostinfo.pm 分析QQWry.dat的perl脚本 http://www.ieasy.org/download/qqhostinfo.pm下载地址已失效
QQWry.Dat 纯真IP数据库
三个文件都拷贝到C:\AWStats\wwwroot\cgi-bin\plugins目录下
qqwry.pl中my $ipfile="./QQWry.Dat"修改为my $ipfile="${DIR}/plugins/QQWry.Dat"
用除记事本之外的编辑工具打开awstats.192.168.1.7.conf,大概在LoadPlugin="hostinfo"的后面增加一行LoadPlugin="qqhostinfo"
八、开始统计
首先停止IIS,备份D:\IISLog\W3SVC1目录下所有的日志。并删除D:\IISLog\W3SVC1目录下所有的日志,启动IIS,然后在其他电脑上浏览一下你的网站,以生成新的日志文件
接下来生成awstats数据。打开一个DOS窗口,并切换到网站根目录/cgi-bin,执行:awstats.pl -config=192.168.1.7 �Cupdate
注:如果命令写成awstats.pl -config=192.168.1.7 -databasebreak=day �Cupdate,则是统计当天的日志,这个命令可以与上边的命令混用
这里要注意几个问题:awstats.pl -config=192.168.1.7 �Cupdate命令需要每天运行一次,最好放在每天23点多,累计统计,如果哪天没运行那天的数据就为0;当某天没有IIS日志的时候运行这个命令会导致出错。
然后在其他电脑上打开网站:http://192.168.1.7/awlp/awstats.pl?config=192.168.1.7试试是否成功
OK了,就是字体有些变样,可以在C:\AWStats\tools\awstats.pl里修改字体,同样用编辑器打开后将文件中所有“11px”的地方都替换为“12px”
现在好多了
注:如果用了统计当天的命令,对应的访问网址是http://192.168.1.7/awlp/awstats.pl?config=192.168.1.7&databasebreak=day&day=2位日&month=2位月&year=4位年