A-A+

awstats 在 IIS 下最详细的安装说明文档

2008年11月24日 编程开发 暂无评论 阅读 1 次

Awstats的用途好处我就不多多说了,在baidu和google里面搜一下一箩筐,但大部分都是说在linux下的安装,有介绍在windows下的安装说明,但是都是非常的潦草的介绍下,本人就花了n多的时间在这些文档中搜索,

现在按照我的说明步骤安装,基本上是不会有任何错误,本人在windows2003上和windows2000上安装测试都没有问题。

参考文件

http://www.anywolfs.com/liuhui/article.asp?id=180
http://www.chedong.com/tech/awstats.html
http://awstats.sourceforge.net/docs/awstats_setup.html
http://awstats.sourceforge.net/docs/awstats_tools.html#awstats_buildstaticpages
http://awstats.sourceforge.net/docs/awstats_config.html#HTMLHeadSection
一、首先将IIS安装好,然后安装 ActivePerl ,
直接安装,这个比较简单,但是本人这里还是要提醒一下各位朋友,我做网管经验总结的,呵呵 ,记得不要吧ActivePerl安装在系统盘上,同时最好把路径也改改,比如我是这么安装的d:toolsperl,其实这是从安全策略角度考虑的.废话不多说,继续我们的专题:

我们现在到d:toolsperl目录去看一看,下面有一个很重要的目录叫做bin的,宝贝都放在这里了。嗯,最好用这种方法过去。首先单击开始菜单,在选择运行,输入cmd然后回车。这时我们可以看到一个控制台窗口。从这个窗口输入d:回车,然后输入cd tools/perl回车,dir回车,然后再cd bin这时我们可以看到一个叫做Perl.exe的文件。嗯这就没有问题了。然后我们编一个小程序试一试。

  用一个文本编辑器输入以下内容:
    print "hello perl world, this is my first!n";  

  存盘为test.pl随便哪个目录只要您好找就可以,我存在perl下面,然后在控制台窗口里面输入:perl ../test.pl就可以看到窗口中打印出“hello perl world, this is my first!”这句话。这就表明安装成功了。(这里要注意下,上面在存文本的时候记得第一行不要是空的)这一步是关键,如果安装没有成果,那么后面的也是白说。
二、现在去下载Awstats,下载一个.zip的文件,
下载到本地以后直接解压缩到你的硬盘里面,为了说明详细点,我把我的所有操作步骤都写下来。我把Awstats解压缩到了E:databack下面,并在awstats下面新建了一个文件夹 website,将iis的站点路径指到这个文件夹下。然后在website下在建立一个日志文件存放的文件夹iis_logfiles,将我要分析的站点日志都copy到这个文件夹下。
对于IIS:缺省有比较好的日志按天截断规则,但是IIS的日志格式比较不适合AWStats统计,因此最好直接去掉所有日志字段,然后严格按照以下列表设置 :

    * 日期 date
    * 时间 time
    * 客户IP地址 c-ip
    * 用户名 cs-username
    * 方法 cs-method
    * URI资源 cs-uri-stem
    * 协议状态 sc-status
    * 发送字节数 sc-bytes
    * 协议版本 cs-version
    * 用户代理 cs(User-Agent)
    * 参照 cs(Referer)

其他的都统统去掉,免得影响统计

三、现在开始配置awstats吧,下面的步骤其实只要细心基本上都不会出现什么错误。

AWStats的主程序awstats.pl会自动根据站点名调用相应站点的配置文件:awstats.website.conf 比如:运行./awstats.pl-config=website 调用的就是同目录下的 awstats.website.conf 配置文件;如果没有指定-config,还会找当前目录下的awstats.conf或者/etc/awstats.conf作为缺省配置文件。所以最好把缺省的awstats.model.conf 重命名成 awstats.website.conf;建议将原来的awstats.model.conf做一下备份。
awstats的脚本和静态文件缺省都在wwwroot目录下,将wwroot下的cgi-bin目录copy一份到website下面,还有把icon文件夹也都copy到website下面。
现在开始配置awstats.website.conf文件:
1. LogFile="e:databackawstatswebsiteiis_logfilesex%YY-24%MM-24%DD-24.log"
这个配置的意思是用24小时前的年份,月份,日期拼出的日志文件名;
2. SiteDomain="localhost" 这里可以写上你的域名,我也不多说,看英文就明白什么意思----站点域名(这里的域名是二级的比如www.website.com)
3. LogFormat=2 缺省值是1:Apache日志,2是IIS日志
4. HostAliases="localhost" 这里设置主机域,这里设置的是主域如(website.com)
5. DefaultFile="index.html" 主页面,一般都写这个,可以不需要做改动,当然想该也没有关系,
6. DirData="E:databackawstatswebsite 用于存放被perl整理以后的日志库,是一个.txt文件,

AWStats 的使用简介和配置一些改进说明。很高兴看到在AWStats 6.3版本开始:中文用户基本上已经只需要将配置文件中将 LoadPlugin="decodeutfkeys" 启用基本上就没有什么中文搜索引擎的统计问题了,目前增加了# Minor chinese search engines 'baidu.com','search.sina.com','search.sohu.com',这3个搜索引擎。

以上修改好了以后我们就可以开始做日志分析了:
四、日志分析其实也非常的简单,在cmd里面输入

D:toolsPerlbin>perl e:/databack/awstats/website/cgi-bin/awstats.pl -update -config=websit -lang=cn

这个路径 e:/databack/awstats/website/cgi-bin/awstats.pl 是我把cgi-bin文件夹copy到我的站点目录下来的,-lang=cn是输出支持中文的库文件。可以看到下面的显示,表示分析成功了
Update for config "e:/databack/awstats/website/cgi-bin/awstats.website.conf"
With data in log file "e:/databack/iis_logfiles/ex060704.log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Phase 2 : Now process new records (Flush history on disk after 20000 hosts)...
Jumped lines in file: 0
Parsed lines in file: 971
Found 1 dropped records,
Found 3 corrupted records,
Found 0 old records,
Found 967 new qualified records.

上面的信息我也不做解释,其实解释也没有意义,我们只要知道结果就可以了。现在在我们建立的website下面会生成一个.txt文件,这个文件就是我们要的库文件。
下面我们就开始生成站点
五、web文件HTML的生成,如果你只是想测试下的话,那么使用下面这个代码就可以了
D:toolsPerlbin>perl e:/databack/awstats/website/cgi-bin/awstats.pl -config=websit -lang=cn -output -dir=e:/databack/awstats/website -staticlinks>index.html

如果想生成整个站点的所有html文件,那么使用下面的生成方式,
D:toolsPerlbin>perl e:/databack/awstats/tools/awstats_buildstaticpages.pl -config=website -lang=cn -output -awstatsprog=e:/databack/awstats/website/cgi-bin/awstats.pl -dir=e:/databack/awstats/website -staticlinksext=html

这里做下说明,每次使用perl编译的时候都要进入D:toolsPerlbin>下面来,否则perl将无法进行,位于awstats/tools 下的awstats_buildstaticpages.pl工具是用来编译所有站点页面的,如果不使用这个文件就无法自动的生成所有文件,那么它只会生成一个单独的主页面,
-awstatsprog=e:/databack/awstats/website/cgi-bin/awstats.pl -awstatsprog是用来指明awstats.pl所在的位置,
-dir=e:/databack/awstats/website -dir是用来指明站点要存放的位置,
-staticlinksext=html -staticlinksext 指明要生成的文件后缀名是什么,注意千万不要有“.”。
您也可以不生成静态页面,直接用perl来访问,那么我可以这么访问到我的地址:http://loacalhost/cgi-bin/awstats.pl?config=website这里前面装perl时,会在iis里面写入web服务扩展(windown2003),去把关于perl的全部选择允许,windows2000的朋友可以去网络上查查关于perl的安装过程,我这里也不多说。

    * 具体的说明如下
      awstats_buildstaticpages.pl

      awstats_buildstaticpages allows you to launch AWStats with -staticlinks option
      to build all possible pages allowed by AWStats -output option.
      (使用AWStats 的 -output 方法,你用awstats_buildstaticpages工具可以生成站点的所有使用到的页面,页面的扩展名是用-staticlinks定义好的)
      Usage: (定义结构:)
      awstats_buildstaticpages.pl (awstats_options) [awstatsbuildstaticpages_options]

    * where awstats_options are any option known by AWStats
      (awstats_options 是AWStats所能识别的参数)
    * -config=configvalue is value for -config parameter (REQUIRED)
      (-config=configvalue configvalue是-config的值如:website,该参数是必须的)
    * -update option used to update statistics before to generate pages
      (-updata 是在没有生成站点页面前,先刷新日志分析结果的统计库)
    * -lang=LL to output a HTML report in language LL (en,de,es,fr,...)
      (-lang=LL 用什么语言输出到html页面上来,cn为中文 )
    * -month=MM to output a HTML report for an old month=MM
      (-month=MM 输出以前某个月份的html统计页面)
    * -year=YYYY to output a HTML report for an old year=YYYY
      (-year=YYYY 输出以前某年的html统计页面)

      and awstatsbuildstaticpages_options can be (awstatsbuildstaticpages_options 参数)
    * -awstatsprog=pathtoawstatspl gives AWStats software (awstats.pl) path
      (-awstatsprog=路径 该路径是awstats.pl所在盘的路径)
    * -dir=outputdir to set output directory for generated pages
      (-dir=输出路径,是用来指明存放输出站点页面的位置)
    * -builddate=%YY%MM%DD Used to add build date in built pages filenames
      (-builddate=%YY%MM%DD 在输出站点页面的文件名里放入创建时间)
    * -staticlinksext=xxx For pages with .xxx extension instead of .html
      (-staticlinksext=xxx 设置输出页面的扩展名)
    * -buildpdf[=pathtohtmldoc] Build a PDF file after building HTML pages.
      (-buildpdf 在生成html页面以后在建立一个pdf文档)
    * Output directory must contains icon directory
      (icon目录要放在存放站点文件的文件夹里面) when this option is used (need 'htmldoc').

以上代码如果看不懂的朋友也没有关系,按照我是说明的去做就可以了,完全能满足大家的需要。

当上面的命令被执行的时候就会开始生成html的文件,需要等待一小会儿,之后你就会发现在我们的站点目录下面website里面已经自动的生成了许多的文件。
如果你有多个站点的日志需要统计,一个一个统计会给自己增加很多麻烦,Awstats给我们提供了一个不错的工具:---->>>awstats_updateall.pl这个工具会自动的将指定目录下的除awstats.model.conf文件以外的其他 config文件都编译出来 ,不过首先要配置好各个站点对应的自己的 AWStats config 文件,使用说明如下

    awstats_updateall launches update process for all AWStats config files (except awstats.model.conf) found in a particular directory, so you can easily setup a cron/scheduler job. The scanned directory is by default /etc/awstats.
      //×swstats_updateall 可以更新指定文件夹下的所有AWStats config 文件(awstats.model.conf文件除外)
    Usage: awstats_updateall.pl now [options]
      //×使用方法:awstats_updateall.pl now [参数]
    -awstatsprog=pathtoawstatspl
      //*-awstatsprog 是用来指定awstats.pl 的物理路径
    -configdir=directorytoscan
      //*-configdir 指定所有AWStats config文件的物理路径
    -excludeconf=conftoexclude (Note: awstats.model.conf is always excluded)
      //*-excludeconf 指定不需要执行的文件,awstats.model.conf 不需要,默认已经排除了它

D:toolsPerlbin>perl e:/databack/awstats/tools/awstats_updateall.pl now -a wstatsprog=e:/databack/awstats/website/cgi-bin/awstats.pl -configdir=e:/databack/awstats/website/cgi-bin -lang=cn

好了awstat目录制作完成,当然这些还只是基础篇。

给我留言

Copyright © 浩然东方 保留所有权利.   Theme  Ality 07032740

用户登录