- 论坛徽章:
- 0
|
作者:苏小勇
http://www.bestunix.net
关键词: awstats 日志分析
说明:下面的完全安装步骤几乎完全是按照文档一步步来的,并没什么新意,但我在网上搜了一下,这样的操作说明还算是独一无二的了,谨以此文献给跟我一样菜的菜鸟们。本文还不太成熟,有什么问题欢迎大家反馈。转载请保留作者联系信息,谢谢。
首先,去http://awstats.sourceforge.net/下载awstats的安装包,解压缩该包,并把它复制到你希望安装的位置,awstats默认让你安装到/usr/local/awstats下面,当然你也可以安装到别的地方,不过这样的话系统会让你确认安装的路径。我们这里以安装到/usr/local/awstats为例。
另外,awstats要求将http.conf中的CustomLog /yourlogpath/yourlogfile common 改为
CustomLog /yourlogpath/yourlogfile combined ,我看了一下,我默认的就是combined,可能现在新版本默认的都是这个吧,那就不用改了。
一切准备妥当以后,我们就开始安装了,先进入/usr/local/awstats/tools里,运行awstats_configure.pl启动安装向导,步骤如下
- [root@demo tools]# ./awstats_configure.pl
- ----- AWStats awstats_configure 1.0 (build 1.3) (c) Laurent Destailleur -----
- This tool will help you to configure AWStats to analyze statistics for
- one web server. You can try to use it to let it do all that is possible
- in AWStats setup, however following the step by step manual setup
- documentation (docs/index.html) is often a better idea. Above all if:
- - You are not an administrator user,
- - You want to analyze downloaded log files without web server,
- - You want to analyze mail or ftp log files instead of web log files,
- - You need to analyze load balanced servers log files,
- - You want to 'understand' all possible ways to use AWStats...
- Read the AWStats documentation (docs/index.html).
- ----->; Running OS detected: Linux, BSD or Unix
- ----->; 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:\Program files\apache group\apache\conf\httpd.conf
- Config file path ('none' to skip web server setup):
- >; /etc/httpd/conf/httpd.conf [/color]#输入你httpc.conf的路径,对于httpd2系列的一般都在/etc/httpd/conf/这个目录下面
复制代码
这里将awstats的配置信息直接写入了httpd.conf
- ----->; Check and complete web server config file '/etc/httpd/conf/httpd.conf'
- Add '<Directory>;' directive
- AWStats directives added to Apache config file.
复制代码
根据上面的httpd配置,更新了awstats.model.conf的内容,下面的.conf文件都要根据这个生成。
- ----->; Update model config file '/usr/local/awstats/wwwroot/cgi-bin/awstats.model.conf'
- File awstats.model.conf updated.
复制代码
下面问你是否要创建一个新的配置文件,我们当然要创建了,否则装awstats干什么呀。选y没说的。
- ----->; Need to create a new config file ?
- Do you want me to build a new AWStats config/profile
- file (required if first install) [y/N] ? y[/color]
复制代码
下面是要生成conf文件的名称了,因为conf文件的名称都是awstats.yourdomainname.conf格式的,所以这里要求你输入你要监测的域名,其实这个域名只是与其他域名相区分的,并不一定非要真实的。我这里输入的是www.bestunix.net
- ----->; Define config file name to create
- What is the name of your web site or profile analysis ?
- Example: www.mysite.com
- Example: demo
- Your web site, virtual server or profile name:
- >; www.bestunix.net[/color]
复制代码
下面是让你输入配置文件的路径,直接回车就可以了,当然你也可以自己定义
- ----->; Define config file path
- In which directory do you plan to store your config file(s) ?
- Default: /etc/awstats
- Directory path to store config file(s) (Enter for default):
- >; /etc/awstats[/color]
复制代码
好了,现在就在/etc/awstats下面创建了你定义的配置文件,这里是awstats.www.bestunix.net.conf
- ----->; Create config file '/etc/awstats/awstats.www.bestunix.net.conf'
- Config file /etc/awstats/awstats.www.bestunix.net.conf created.
复制代码
创建完配置文件以后会自动重启httpd服务。
- ----->; Restart Web server with '/sbin/service httpd restart'
- 停止 httpd [ 确定 ]
- 启动 httpd [ 确定 ]
复制代码
下面的都是直接回车就可以了
- ----->; Add update process inside a scheduler
- Sorry, configure.pl does not support automatic add to cron yet.
- You can do it manually by adding the following command to your cron:
- /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.bestunix.net
- Or if you have several config files and prefer having only one command:
- /usr/local/awstats/tools/awstats_updateall.pl now
- Press ENTER to continue...
- A SIMPLE config file has been created: /etc/awstats/awstats.www.bestunix.net.conf
- You should have a look inside to check and change manually main parameters.
- You can then manually update your statistics for 'www.bestunix.net' with command:
- >; perl awstats.pl -update -config=www.bestunix.net
- You can also read your statistics for 'www.bestunix.net' with URL:
- >; http://localhost/awstats/awstats.pl?config=www.bestunix.net
- Press ENTER to finish...
复制代码
剩下的工作我们就需要手工完成了。
第一, 在crontab里手工加进去
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.bestunix.net,因为这个程序是通过分析日志来进行流量统计的,如果你的日志文件很大的话是很耗系统资源的。还好,我的流量不大,我设定的是每个小时运行一次,你如果服务器比较繁忙的话也可以每天夜里运行一次。当然你也可以手工运行上面的命令来进行更新统计信息。
第二,conf文件的配置:
LogFile
指定你要分析的日志文件,默认是/var/log/httpd/mylog.log,可以根据你的需要调整,如果你要分析httpd的全部日志的就是/var/log/httpd/access_log,我们一般就选这个了。
LogType
log类型,默认是web log,不用修改,如果你不是的话就自己照说明改了。
LogFormat
log格式,一般情况下如果是apache的话就是1,iis就是2,默认不用修改,你也可以照说明自定义,呵呵,我还不太清楚怎么定义。
LogSeparator
log中的分隔符,默认不用修改,如果上面的格式是你自定义的话这里也要修改了
DNSLookup
默认不用修改
DirData
生成的日志分析结果的保存路径,默认是/var/lib/awstats,你如果要使用默认的路径的话,这个目录是需要手工创建的,注意这个路径必须是可读写的。
下面四项都是在配置时,不用修改。
DirCgi cgi的路径,这里都是相对于网站根目录的绝对路径
DirIcons icon的路径
SiteDomain 域名:www.bestunix.net
HostAliases 主机别名
AllowToUpdateStatsFromBrowser
下面这项是是否允许从浏览器里更新统计文件,默认是0不允许,如果我们改为1的话,就需要apache的属主用户对/var/lib/awstats目录有读写权限,并对/var/log/httpd目录有读取权限
AllowFullYearView
这个不用修改默认值。awstats默认是以月为单位进行日志分析,如果我们要分析整年的日志的可以在这里设置,因为分析整年的日志的话可能要消耗很多系统资源。如果你需要对年日志进行分析的话,建议手工启动。
这样最基本的配置就完成了,我们可以通过http://www.bestunix.net awstats/awstats.pl?config=www.bestunix.net来查看统计信息。
常见问题:
问题一,在第一次进行日志分析时候就出错了
- [root@demo conf.d]# /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.bestunix.net
- Error: AWStats database directory defined in config file by 'DirData' parameter (/var/lib/awstats) does not exist or is not writable.
- Setup ('/etc/awstats/awstats.www.bestunix.net.conf' file, web server or permissions) may be wrong.
- Check config file, permissions and AWStats documentation (in 'docs' directory).
复制代码
这个是因为在/etc/awstats/awstats.www.bestunix.net.conf中DirData中定义的目录启动apache的用户没有写得权限,更改目录或更改权限都可以解决。
问题二,出来的页面里所有的流量统计都是空的。
同样是/etc/awstats/awstats.www.bestunix.net.conf的问题,在这个文件里有一行
LogFile="/var/log/httpd/mylog.log"
我们一般情况下把这个路径改为”/var/log/apache/access.log”就可以了,如果你设了很多虚拟主机,每个主机都配置了不同的log的话,在这里指定你要统计的那个主机的log文件就可以了。
问题三,浏览页面时提示没有权限,出现403错误,如下
- Forbidden
- You don't have permission to access /awstats/awstats.pl on this server.
- Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request
复制代码
因为/usr/local/awstats这个目录默认属主是root,其他用户没有执行的权限,我把这个目录的权限改为755就可以了。但是理论上应该只需要改wwwroot的权限就可以了,很奇怪。
更改默认的index文件,默认是index.html,我们可以根据自己的需要修改,比如我改为了
- DefaultFile="index.html index.php index.htm"
复制代码 |
|