awstats 可将 apache 访问日志解析为静态网页报表,涵盖访问量、独立访客等指标;需 perl 环境、启用 mod_cgi/mod_alias、配置日志路径与域名,并通过 apache 别名暴露 cgi 脚本,最后运行更新命令生成数据并访问验证。

AWStats 能把 Apache 的原始访问日志(如 access_log)自动解析成直观的网页报表,涵盖访问量、独立访客、热门页面、来源国家、搜索引擎关键词、HTTP 错误码等。它不依赖数据库,而是将分析结果存为静态文件,通过 CGI 脚本在浏览器中渲染,轻量且稳定。
确认基础环境已就绪
AWStats 是 Perl 写的,所以必须有 Perl 运行环境;同时需要 Apache 正常运行,并能执行 CGI 脚本:
- 检查 Perl:运行
perl -v确认已安装(通常系统自带) - 确认 Apache 已启用
mod_cgi和mod_alias模块(Ubuntu/Debian 默认启用;CentOS/RHEL 可用httpd -M | grep cgi验证) - 确保 Apache 的
access_log文件存在且可读(常见路径:/var/log/apache2/access.log或/var/log/httpd/access_log)
安装与配置 AWStats
不同系统安装方式略有差异,但核心步骤一致:
-
Ubuntu/Debian:直接运行
sudo apt install awstats,安装后默认配置已生成,只需修改对应站点配置 -
CentOS/RHEL:下载源码包解压(如
awstats-7.8.tar.gz),移动到/usr/local/awstats,再用tools/awstats_configure.pl向导生成配置文件 - 无论哪种方式,最终都会在
/etc/awstats/下生成一个类似awstats.yourdomain.conf的配置文件
编辑该配置文件,重点设置三项:
Apache 2.4.62 官方 tar.gz 源码包是 Linux 及类 Unix 系统构建 Web 服务器的核心基础。通过源码编译安装,开发者能够灵活定制模块、优化性能并精准控制安装路径,满足多样化的业务需求。
-
LogFile="/var/log/apache2/access.log"→ 指向你的真实日志路径 -
LogFormat=1→ 对应 Apache 默认的combined日志格式(含 Referer 和 User-Agent);若自定义了日志格式,需按字段顺序匹配LogFormat字符串 -
SiteDomain="yourdomain.com"或 IP 地址(如"192.168.1.100")→ 报表顶部显示的站点标识
让 Apache 能访问 AWStats 页面
需要把 AWStats 的 CGI 脚本和静态资源暴露给 Web 访问:
- 在 Apache 配置中(如
/etc/apache2/conf-available/awstats.conf)添加别名映射:
Alias /awstats-icon/ "/usr/share/awstats/icon/"<br>Alias /awstatscss "/usr/share/doc/awstats/examples/css"<br>ScriptAlias /awstats/ "/usr/lib/cgi-bin/"<br><directory><br> Require all granted<br></directory>
- 启用该配置:
sudo a2enconf awstats && sudo systemctl reload apache2(Ubuntu);CentOS 则需手动包含或追加到httpd.conf并重启服务 - 确保
/usr/lib/cgi-bin/awstats.pl具备可执行权限(chmod +x)且第一行#!/usr/bin/perl路径正确(Windows 下需改为 ActivePerl 路径)
首次生成报表并验证访问
配置完成后,手动触发一次日志分析,生成初始数据:
- 运行命令:
sudo awstats.pl -update -config=yourdomain(其中yourdomain是你配置文件名中awstats.后的部分) - 成功后会在
/var/lib/awstats/(或配置中指定的DirData)下生成awstats.yourdomain.txt数据文件 - 打开浏览器访问:
http://your-server-ip/awstats/awstats.pl?config=yourdomain - 若看到带图表和表格的中文/英文统计页,说明部署成功
后续可通过 cron 定时自动更新(Ubuntu 自带任务每10分钟执行一次;CentOS 需手动添加类似 */10 * * * * root /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=yourdomain 的 crontab 条目)。










