AWStats配置教程:Nginx 与 Apache 环境下的详细步骤 (完整指南)
AWStats 是一款常见的网站日志分析工具,可以解析服务器日志并生成可视化报表。由于 Nginx 和 Apache 在日志格式和 Web 服务配置上有所差异,所以在部署 AWStats 时步骤也不同。下面分别介绍 Nginx 和 Apache 的配置方法。
一、Nginx 下配置 AWStats
1. 安装 AWStats
Ubuntu/Debian:
sudo apt update
sudo apt install awstats
CentOS/RHEL:
sudo yum install awstats
2. 配置 Nginx 日志格式
AWStats 默认支持 Apache 格式的日志,因此需要在 Nginx 中定义兼容格式。
编辑 /etc/nginx/nginx.conf
或站点配置文件:
log_format awstats '$remote_addr - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';
access_log /var/log/nginx/access.log awstats;
重启 Nginx:
sudo systemctl restart nginx
3. 创建 AWStats 配置文件
复制模板:
sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.mysite.conf
编辑文件:
LogFile="/var/log/nginx/access.log"
LogFormat=1
SiteDomain="www.example.com"
HostAliases="127.0.0.1 localhost www.example.com"
DirData="/var/lib/awstats"
4. 更新日志数据
运行:
sudo /usr/lib/cgi-bin/awstats.pl -config=mysite -update
5. 配置 Web 界面
Nginx 自身不支持 CGI,需要借助 Apache 或 fcgiwrap
。推荐使用 fcgiwrap + spawn-fcgi。
安装:
sudo apt install fcgiwrap spawn-fcgi
创建配置(例如 /etc/nginx/conf.d/awstats.conf
):
server {
listen 8080;
server_name localhost;
location /awstatsclasses {
alias /usr/share/awstats/lib/;
}
location /awstats-icon {
alias /usr/share/awstats/icon/;
}
location /cgi-bin/awstats.pl {
fastcgi_pass unix:/var/run/fcgiwrap.socket;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME /usr/lib/cgi-bin/awstats.pl;
}
}
重启 Nginx:
sudo systemctl restart nginx
访问:
http://yourdomain:8080/cgi-bin/awstats.pl?config=mysite
即可看到 AWStats 报表。
二、Apache 下配置 AWStats
1. 安装 AWStats
sudo apt update
sudo apt install awstats
2. 确认 Apache 日志格式
Apache 默认日志格式通常兼容 AWStats,无需额外修改。一般路径:
/var/log/apache2/access.log
3. 创建配置文件
复制模板:
sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.mysite.conf
编辑配置:
LogFile="/var/log/apache2/access.log"
LogFormat=1
SiteDomain="www.example.com"
HostAliases="127.0.0.1 localhost www.example.com"
DirData="/var/lib/awstats"
4. 更新日志数据
运行:
sudo /usr/lib/cgi-bin/awstats.pl -config=mysite -update
5. 配置 Web 界面
Apache 原生支持 CGI,直接启用模块并配置即可。
启用 CGI:
sudo a2enmod cgi
sudo systemctl restart apache2
在 Apache 配置文件(如 /etc/apache2/sites-available/000-default.conf
)中添加:
Alias /awstatsclasses "/usr/share/awstats/lib/"
Alias /awstats-icon "/usr/share/awstats/icon/"
ScriptAlias /awstats/ "/usr/lib/cgi-bin/"
<Directory "/usr/lib/cgi-bin/">
Options +ExecCGI
AddHandler cgi-script .pl
</Directory>
保存并重启 Apache:
sudo systemctl restart apache2
浏览器访问:
http://yourdomain/awstats/awstats.pl?config=mysite
即可查看统计报表。
三、Nginx 与 Apache 配置对比
项目 | Nginx 配置 | Apache 配置 |
---|---|---|
日志格式 | 需要自定义 log_format | 默认兼容 Common/Combined |
CGI 支持方式 | 需借助 fcgiwrap 或 Apache 反代 | 原生支持 CGI |
配置复杂度 | 较高,需要额外服务支持 | 相对简单,直接配置即可 |
推荐场景 | 高性能站点,配合 fcgiwrap 使用 | 常见中小型站点,部署方便 |
THE END