使用AWStats和JAWStats生成网站统计信息Debian Lenny
本教程介绍如何使用Debian Lenny Web服务器上的AWStats和JAWStats生成您的网站的统计信息。 AWStats是一个功能强大且功能强大的工具,可以生成高级的Web服务器统计信息。 JAWStats与AWStats一起运行,并为您的网站访问者提供清晰和翔实的图表,图表。 AWStats能够为统计信息创建图形网页,但是JAWStats以更好的方式呈现这些数据 - 组织得更好,并且使用了Ajax和Flash。
我不会保证这将为您工作!
1初步说明
在本教程中,我有一个网站www.example.com
(具有别名example.com
, www.example.net
和example.net
)和文档根/var/www/www.example.com/web
。
2安装和配置AWStats
AWStats可以安装如下:
aptitude install awstats
其配置位于/ etc / awstats /
目录中。 对于每个虚拟主机,我们需要在该目录中有一个名为awstats。<sitename> .conf
的配置文件(即,对于我们的网站www.example.com,
我们需要配置文件awstats.www.example.com.conf
)。 我们可以使用/etc/awstats/awstats.conf
文件作为模板:
cd /etc/awstats/
cp awstats.conf awstats.www.example.com.conf
vi awstats.www.example.com.conf
修改以下设置:
[...] LogFile="/var/log/apache2/access.log" [...] LogFormat=1 [...] SiteDomain="www.example.com" [...] HostAliases="example.com www.example.net example.net" [...] |
LogFile
必须包含虚拟主机的Apache访问日志或整个Apache访问日志的路径(所有站点的路径); AWStats可以过滤出不属于您的网站的记录。 如果您有动态文件名(例如因为它包含一个日期,例如因为您的访问日志是由cronolog或vlogger创建的),则可以使用占位符,例如:
LogFile="/var/log/httpd/access.log_%YYYY-0_%MM-0_%DD-0"
这在AWStats配置文件中的注释中说明如下:
"LogFile" contains the web, ftp or mail server log file to analyze.
Possible values: A full path, or a relative path from awstats.pl directory.
Example: "/var/log/apache/access.log"
Example: "../logs/mycombinedlog.log"
You can also use tags in this filename if you need a dynamic file name
depending on date or time (Replacement is made by AWStats at the beginning
of its execution). This is available tags :
%YYYY-n is replaced with 4 digits year we were n hours ago
%YY-n is replaced with 2 digits year we were n hours ago
%MM-n is replaced with 2 digits month we were n hours ago
%MO-n is replaced with 3 letters month we were n hours ago
%DD-n is replaced with day we were n hours ago
%HH-n is replaced with hour we were n hours ago
%NS-n is replaced with number of seconds at 00:00 since 1970
%WM-n is replaced with the week number in month (1-5)
%Wm-n is replaced with the week number in month (0-4)
%WY-n is replaced with the week number in year (01-52)
%Wy-n is replaced with the week number in year (00-51)
%DW-n is replaced with the day number in week (1-7, 1=sunday)
use n=24 if you need (1-7, 1=monday)
%Dw-n is replaced with the day number in week (0-6, 0=sunday)
use n=24 if you need (0-6, 0=monday)
Use 0 for n if you need current year, month, day, hour...
Example: "/var/log/access_log.%YYYY-0%MM-0%DD-0.log"
Example: "C:/WINNT/system32/LogFiles/W3SVC1/ex%YY-24%MM-24%DD-24.log"
You can also use a pipe if log file come from a pipe :
Example: "gzip -d </var/log/apache/access.log.gz |"
If there are several log files from load balancing servers :
Example: "/pathtotools/logresolvemerge.pl *.log |"
您可能使用Apache的组合
日志格式,因此您应该使用LogFormat = 1
(再次,查看文件中的注释以找出正确的格式,但在大多数情况下,您使用的是Apache的组合
日志格式)。
SiteDomain
:指定您的网站的主域名(在这种情况下为www.example.com
)。
HostAliases
:指定用于访问您的网站的所有其他域/子域( example.com
, www.example.net
,本示例中为example.net
)。
接下来我们创建一个cron工作,每九分钟运行一次AWStats:
crontab -e
9,19,29,39,49,59 * * * * /usr/lib/cgi-bin/awstats.pl -config=www.example.com -update >/dev/null |
(如果您有一个动态访问日志,由cronolog或vlogger创建,最好在cron作业中加入59分钟,以便AWStats可以在23:59h之前处理当前的访问日志,然后再创建一个新的访问日志。 :00h - 你的统计资料只能在23:59h和0:00h之间失去分钟。)
3安装和配置JAWStats
请访问http://www.jawstats.com/download ,下载最新的JAWStats版本,将其解压缩到PC上,然后将其上传到www.example.com
网站上的目录,例如使用FTP。 在本教程中,我将其上传到/var/www/www.example.com/web/jawstats
目录。
之后,我们必须将config.dist.php
重命名为config.php
并进行修改:
mv /var/www/www.example.com/web/jawstats/config.dist.php /var/www/www.example.com/web/jawstats/config.php
vi /var/www/www.example.com/web/jawstats/config.php
<?php // core config parameters $sDefaultLanguage = "en-gb"; $sConfigDefaultView = "thismonth.all"; $bConfigChangeSites = false; $bConfigUpdateSites = false; $sUpdateSiteFilename = "xml_update.php"; // individual site configuration $aConfig["www.example.com"] = array( "statspath" => "/var/lib/awstats/", "updatepath" => "/usr/lib/cgi-bin/", "siteurl" => "http://www.example.com", "sitename" => "My Example.com Web Site", "theme" => "default", "fadespeed" => 250, "password" => "secret", "includes" => "", "language" => "en-gb" ); ?> |
如果要删除“更改站点”链接,请将$ bConfigChangeSites
更改为
false
。
如果您不希望用户能够自己更新统计信息,请将$ bConfigUpdateSites
设置为
false
。
之后,我们有数组$ aConfig [“site1”]
- 重命名它,以便它以您的站点命名( $ aConfig [“www.example.com”]
)。 将statspath
设置为/ var / lib / awstats /
(不要忘记尾部斜杠!), 更新路径
到/ usr / lib / cgi-bin /
, siteurl
到http://www.example.com
,并指定名称您的网站在sitename
下。 只有将$ bConfigUpdateSites
设置为
true
(如果允许用户通过浏览器更新统计信息,则必须键入此密码),才需要输入密码。
就是这样 - 在AWStats cron工作第一次运行之后(对于拥有大量流量的网站可能需要很长时间),您可以访问http://www.example.com/下的统计信息颚板
以下是几个截图:
4密码保护JAWStats输出目录(可选)
现在,最好密码保护目录/var/www/www.example.com/web/jawstats
,除非您希望所有人都能访问您的网站统计信息。
为此,我们在/var/www/www.example.com/web/jawstats中创建一个.htaccess文件:
vi /var/www/www.example.com/web/jawstats/.htaccess
AuthType Basic AuthName "Members Only" AuthUserFile /var/www/www.example.com/.htpasswd <limit GET PUT POST> require valid-user </limit> |
然后我们必须创建密码文件/var/www/www.example.com/.htpasswd
。 我们要用用户名admin
登录,所以我们这样做:
htpasswd -c /var/www/www.example.com/.htpasswd admin
输入管理员
的密码,你已经完成了!
5链接
- AWStats: http : //www.awstats.org/
- JAWStats: http : //www.jawstats.com/
- Apache: http : //httpd.apache.org/
- Debian: http : //www.debian.org/