Chinaunix首页 | 论坛 | 博客
  • 博客访问: 170943
  • 博文数量: 65
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 720
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-16 08:59
文章分类

全部博文(65)

文章存档

2011年(3)

2010年(3)

2009年(43)

2008年(16)

我的朋友

分类: LINUX

2010-02-24 12:04:45

1、从官网下载awstats软件  我下载的是:awstats-6.95.tar.gz
2 解压缩  tar -xzvf awstats-6.95.tar.gz

3 awstats默认让你安装到/usr/local/awstats下面,会解压出三个目录 docs tools wwwroot
(以后因在生成文件的时候,报错,我就将docs的权限给改成了777  chmod 777 docs)
4   awstats要求将http.conf中的CustomLog   common   改为CustomLog /yourlogpath/yourlogfile combined (这个在httpd.conf中去改,我安装的是apache2.2)             
5 # cd /usr/local/awstats/tools  #./awstats_configure.pl

  ----- AWStats awstats_configure 1.0 (build 1.8) (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): 输入你httpc.conf的路径
/data/apache/conf/httpd.conf
-----> Check and complete web server config file '/data/apache/conf/httpd.conf'
  All AWStats directives are already present.
-----> Update model config file '/usr/local/awstats/wwwroot/cgi-bin/awstats.model.conf'
  File awstats.model.conf updated.
-----> 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] ?  下面问你是否要创建一个新的配置文件,我们当然要创建了,否则装awstats干什么呀。选y没说的
 
下面是要生成conf文件的名称了,因为conf文件的名称都是awstats.yourdomainname.conf格式的,所以这里要求你输入你要监测的域名,其实这个域名只是与其他域名相区分的,并不一定非要真实的。我这里输入的是

-----> Define config file name to create
What is the name of your web site or profile analysis ?
Example:
Example: demo
Your web site, virtual server or profile name: 
下面是让你输入配置文件的路径,直接回车就可以了,当然你也可以自己定义
-----> 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下面创建了你定义的配置文件,这里是awstats.
下面的都是直接回车就可以了
----->; 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=
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.

You should have a look inside to check and change manually main parameters.

You can then manually update your statistics for ''with command:

>; perl awstats.pl -update -config=
You can also read your statistics for ''with URL:

>; 


Press ENTER to finish...

 在crontab里手工加进去
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=,因为这个程序是通过分析日志来进行流量统计的,如果你的日志文件很大的话是很耗系统资源的。还好,我的流量不大,我设定的是每个小时运行一次,你如果服务器比较繁忙的话也可以每天夜里运行一次。当然你也可以手工运行上面的命令来进行更新统计信息(或着[root@linux ~]# vi /usr/local/awstats/wwwroot/cgi-bin/awstats.sh
cd /usr/local/awstats/wwwroot/cgi-bin
perl awstats.pl -config= -update -output > index.html


[root@linux ~]# chmod 755 /usr/local/awstats/wwwroot/cgi-bin/awstats.sh
[root@linux ~]# vi /etc/crontab
0 3 * * * root /usr/local/awstats/wwwroot/cgi-bin/awstats.sh

)

conf文件的配置:

LogFile 
指定你要分析的日志文件,默认是/var/log/httpd/mylog.log,可以根据你的需要调整,如果你要分析httpd的全部日志的就是/var/log/httpd/access_log,我们一般就选这个了。  我自己选的是/data/apache/logs/access_log

LogType 
log类型,默认是web log,不用修改,如果你不是的话就自己照说明改了。

LogFormat
log格式,一般情况下如果是apache的话就是1,iis就是2,默认不用修改,你也可以照说明自定义,呵呵,我还不太清楚怎么定义。

LogSeparator
log中的分隔符,默认不用修改,如果上面的格式是你自定义的话这里也要修改了

DNSLookup 
默认不用修改

DirData 
生成的日志分析结果的保存路径,默认是/var/lib/awstats,你如果要使用默认的路径的话,这个目录是需要手工创建的,注意这个路径必须是可读写的。

下面四项都是在配置时,不用修改。

DirCgi cgi的路径,这里都是相对于网站根目录的绝对路径
DirIcons icon的路径
SiteDomain 域名:
HostAliases 主机别名

AllowToUpdateStatsFromBrowser
下面这项是是否允许从浏览器里更新统计文件,默认是0不允许,如果我们改为1的话,就需要apache的属主用户对/var/lib/awstats目录有读写权限,并对/var/log/httpd目录有读取权限
 
AllowFullYearView

这个不用修改默认值。awstats默认是以月为单位进行日志分析,如果我们要分析整年的日志的可以在这里设置,因为分析整年的日志的话可能要消耗很多系统资源。如果你需要对年日志进行分析的话,建议手工启动。

这样最基本的配置就完成了

root@linux awstats]# cd /usr/local/awstats/wwwroot/cgi-bin
[root@linux cgi-bin]# perl awstats.pl -config= -update \
> -output > index.html
注意如果在ie中输入:

会报错:

Server error!

The server encountered an internal error and was unable to complete your request.

Error message:
Premature end of script headers: index.html

If you think this is a server error, please contact the .

在查一下httpd.conf中的文件发现
ScriptAlias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/"

#
# This is to permit URL access to scripts/files in AWStats directory.
#

    Options None
    AllowOverride None
    Order allow,deny
    Allow from all

这个时候,你只要将生成的index.html文件拷贝到别的目录显示就可以啦


有可能遇到的问题:


问题一,在第一次进行日志分析时候就出错了

[root@demo conf.d]# /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=

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..conf' file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in 'docs' directory).


这个是因为在/etc/awstats/awstats..conf中DirData中定义的目录启动apache的用户没有写得权限,更改目录或更改权限都可以解决。
问题二,出来的页面里所有的流量统计都是空的。
同样是/etc/awstats/awstats..conf的问题,在这个文件里有一行
LogFile="/var/log/httpd/mylog.log"
我们一般情况下把这个路径改为”/data/apache/logs/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"



 

阅读(13625) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~