AWStats 可统计 UV 和 PV,需配置 Nginx 日志格式匹配、正确设置 LogFormat、启用 IPTracking(如用代理)、更新数据并生成报告,在“Visitors”页查看按天/周/月汇总的独立 IP 数(UV)及页面请求数(PV)。

AWStats 能统计网站独立访客(UV)和总访问量(PV),但需正确配置日志格式、数据更新与报告生成流程。它不直接输出“每日 UV 数”这种简洁数字,而是通过解析后的静态页面展示,核心在于确保日志字段可被准确识别。
确保 Nginx 日志格式兼容 AWStats
AWStats 默认按 Apache 日志格式解析,Nginx 需显式匹配。推荐在 nginx.conf 中设置:
log_format awstats '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';关键点:
-
$remote_addr必须存在且为真实客户端 IP(若前端有代理,需用$http_x_forwarded_for并确保可信) -
$time_local格式必须含完整日期时间(如10/Sep/2026:14:22:05 +0800),AWStats 依赖它做时间分组 - 不要省略引号或空格,字段顺序无需严格对齐,但正则匹配依赖结构稳定性
配置 AWStats 解析规则
编辑站点配置文件(如 /etc/awstats/awstats.yourdomain.conf):
-
LogFormat="%host %other %logname %time1 %methodurl %code %bytesd %refererquot %uaquot %extra1"—— 对应上面的 Nginx 格式 -
LogType=W(表示 Web 日志) SiteDomain="yourdomain.com"HostAliases="localhost 127.0.0.1 yourdomain.com"-
DirData="/var/lib/awstats"(确保目录可写)
如果使用 CDN 或反向代理,还需启用 IPTracking=2 并设置 IPMasking=2 防止隐私泄露。
运行统计并查看独立访客结果
执行命令更新数据:
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=yourdomain -configdir=/etc/awstats
成功后,数据存入 /var/lib/awstats/awstats.yourdomain.txt。再生成 HTML 报告:
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -output -config=yourdomain > /var/www/html/awstats.html
打开网页后,在 “Visitors” 标签页中可查:
- Unique visitors:按天/周/月汇总的独立 IP 数(即 UV)
- Pages 和 Hits:分别对应 PV(页面请求)和总请求数(含图片、JS 等)
- 点击 “Last 30 days” 可看趋势图,导出 CSV 也能提取具体日期的 UV 值
注意过滤无效 IP 与提升准确性
默认情况下,AWStats 会把 -、127.0.0.1、内网地址等计入统计,建议在配置中添加:
-
ValidHTTPReferer="yourdomain.com"(可选,限制 referer 来源) IgnoreIP="192.168.0.0/16 10.0.0.0/8 127.0.0.1"SkipHosts="^127\.0\.0\.1$ ^::1$ ^localhost$"- 若日志中
$remote_addr经常为-,说明代理头未透传,需检查 Nginx 的real_ip模块配置


















