Lighttpd 安装和配置 AwStats 软件日志分析器
AWStats是一款功能强大的免费工具,可以图形方式生成高级 Web、流媒体、FTP 或邮件服务器统计信息。此日志分析器可作为 CGI 或命令行使用,并在几个图形网页中显示日志中包含的所有可能信息。它使用部分信息文件来快速频繁地处理大型日志文件。它可以分析来自所有主要服务器工具的日志文件,如 Apache 日志文件(NCSA 组合/XLF/ELF 日志格式或通用/CLF 日志格式)、WebStar、IIS(W3C 日志格式)以及许多其他 Web、代理、WAP、流媒体服务器、邮件服务器和一些 FTP 服务器。
您可以在 Lighttpd 网络服务器下轻松配置 awstats。
步骤#1:安装awstats
访问项目网站以获取最新的稳定版本。
# cd /tmp
# wget http://jaist.dl.sourceforge.net/sourceforge/awstats/awstats-6.7-1.noarch.rpm
# rpm -ivh awstats-6.7-1.noarch.rpm
重要的配置文件
- /usr/local/awstats/wwwroot/ – 默认安装目录
- /etc/awstats/ – 所有域的配置文件
- /usr/local/awstats/wwwroot/cgi-bin/:主程序目录
- /var/log/lighttpd/domain.com/access.log:Web 服务器访问日志文件
- /home/lighttpd/domain.com/http/:你的域名的 Web 根目录
- /home/lighttpd/domain.com/stats/awstats/:存储 awstats 数据文件的目录。您需要创建此目录。
步骤2:配置lighttpd
打开 lighttpd.conf 文件并配置perl cgi 访问(有关详细信息,请参阅教程):
# vi lighttpd.conf
附加以下配置指令:
alias.url = ( "/awstatsclasses" => "/usr/local/awstats/wwwroot/classes/", "/awstatscss" => "/usr/local/awstats/wwwroot/css/", "/awstatsicons" => "/usr/local/awstats/wwwroot/icon/", "/awstats/" => "/usr/local/awstats/wwwroot/cgi-bin/", "/icon/" => "/usr/local/awstats/wwwroot/icon/" ) # provide awstats cgi-bin access $HTTP["url"] =~ "/awstats/" { cgi.assign = ( ".pl" => "/usr/bin/perl" ) }
保存并关闭文件。重新启动lighttpd:
# /etc/init.d/lighttpd restart
步骤#3:配置域
将默认配置文件 awstats.model.conf 复制为 awstats.domain.com.conf:
打开配置文件:
确保按如下方式设置值:
其中,
# cd /etc/awstats
# cp awstats.model.conf awstats.theos.in.conf
# vi awstats.theos.in.conf
LogFile="/var/log/lighttpd/theos.in/access.log"
LogFormat=1
SiteDomain="theos.in"
DirData="/home/lighttpd/theos.in/stats/awstats"
- LogFile:定义要分析的 Web、FTP 或邮件服务器日志文件。日志文件的完整路径 /var/log/lighttpd/theos.in/access.log
- LogFormat:使用 Apache / Lighttpd 组合日志格式
- DirData:当 AWStats 更新其统计数据时,它会将其分析结果存储在文件中(AWStats 数据库)。所有这些文件都写入“DirData”参数定义的目录中。将此值设置为您希望 AWStats 将其数据库和工作文件保存到的目录。
保存并关闭文件。创建 dataDir:
# mkdir -p /home/lighttpd/theos.in/stats/awstats
# chown lighttpd:lighttpd /home/lighttpd/theos.in/stats/awstats
步骤 4:生成统计数据
在 shell 提示符下输入以下命令:
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=domain.com
如果您的域名是 theos.in,请输入:
# /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=theos.in
示例输出:
Create/Update database for config "/etc/awstats/awstats.theos.in.conf" by AWStats version 6.7 (build 1.892) From data in log file "/var/log/lighttpd/theos.in/access.log"... Phase 1 : First bypass old records, searching new record... Direct access after last parsed record (after line 50894) Jumped lines in file: 50894 Found 50894 already parsed records. Parsed lines in file: 47047 Found 0 dropped records, Found 0 corrupted records, Found 0 old records, Found 47047 new qualified records.
第 5 步:查看统计数据
打开网页浏览器并输入 url:
http://server-ip/awstats/awstats.pl?config=domain.com
http://server-ip/awstats/awstats.pl?config=theos.in
http://theos.in/awstats/awstats.pl?config=theos.in
(图 01:theos.in 域名的 Awstats – 点击放大)
使用密码保护您的统计数据
使用mod_auth在 Lighttpd 下设置一个安全的密码保护区域。
自动更新统计数据
只需创建一个 shell 脚本即可通过cron 作业更新所有域 – /etc/cron.daily/01awstats :
# vi /etc/cron.daily/01awstats
附加代码如下:
#!/bin/bash # path to cgi-bin AWS=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl # append your domain DOMAINS="theos.in example.com example.com cricketnow.in vivekgite.com" # loop through all domains for d in ${DOMAINS} do ${AWS} -update -config=${d} done
保存并关闭文件。测试你的脚本:
# chmod +x /etc/cron.daily/01awstats
# /etc/cron.daily/01awstats
推荐阅读:
- Awstats 文档和手册页