1、修改NGXINX日志格式为下面格式:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" $http_x_forwarded_for';
2、安装AWSTATS
/usr/local/awstats/tools/awstats_configure.pl
Enter full config file path of your Web server. Example: /etc/httpd/httpd.conf Example: /usr/local/apache2/conf/httpd.conf Example: c:\Program files\apache group\apache\conf\httpd.conf Config file path ('none' to skip web server setup):
如果使用了apache,哪么指定路径,如果没有使用,输入none
指定安装配置文件的位置,一般可以默认即可
3、更改配置文件
LogFile="/var/log/httpd/mylog.log"
更改为你的日志文件格式,即可,如
LogFile="/usr/local/nginx/logs/access.log-%YYYY%MM%DD"
后面代表日期格式,一般上面有说明,可以参考你的格式!
4、然后执行 Awstats 日志更新程序开始统计分析。
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.moabc.net
5、生成HTML文件
mkdir /data/webroot/awstats /usr/local/awstats/tools/awstats_buildstaticpages.pl -update \ -config=www.moabc.net -lang=cn -dir=/data/admin_web/awstats \ -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
上述命令的具体意思如下:
/usr/local/awstats/tools/awstats_buildstaticpages.pl Awstats 静态页面生成工具
-update -config=www.moabc.net 更新配置项
-lang=cn 语言为中文
-dir=/data/admin_web/awstats 统计结果输出目录
-awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl Awstats 日志更新程序路径。
接下来,只需在nginx.conf 中,把该目录配置上去即可。 例子如下:(加粗部分):
server { listen 80; server_name localhost; location ~ ^/web/ { root /data/web; index index.html; error_log off; charset gb2312; } location ~ ^/awstats/ { # html 静态页面目录 root /data/webroot/awstats; index index.html; access_log off; error_log off; charset gb2312; #最好把默认编码改成 gb2312避免浏览器因自动编码出现乱码的情况 } location ~ ^/icon/ { # 图标目录 root /usr/local/awstats/wwwroot; index index.html; access_log off; error_log off; charset gb2312; } }
用浏览器查看到统计的详细结果 http://youhostname/awstats/awstats.www.moabc.net.html
至此,使用 awstats 已能完全支持 Nginx 的日志统计。
回页首
配置 Awstats 自动运行
为了让整个日志的统计过程自动完成,我们需要设置 crontab 计划任务,让 Nginx 日志切割以及 Awstats 自动运行,定时生成结果页面。
#vi /etc/crontab 11 59 * * * /opt/nginx/sbin/logcron.sh #半夜11:59 进行日志切割 00 1 * * * /usr/local/awstats/tools/awstats_buildstaticpages.pl \ -update -config=www.moabc.net -lang=cn -dir=/data/admin_web/awstats \ -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
#凌晨00:01 Awstats进行日志分析
:wq保存退出
修改 Nginx 配置完毕后,执行命令 killall –s HUP nginx 让 Nginx 重新加载配置即可。