nginx awstats 安装配置和日志分析

1.Nginx安装目录:/usr/local/nginx

Nginx配置文件存放目录:/usr/local/nginx/conf/nginx.conf

Nginx日志目录:/usr/local/nginx/logs

Awstats安装目录:/usr/local/awstats

Awstats配置文件存放目录:/etc/awstats

日志切割脚本存放目录:/usr/local/nginx/nginx_log.sh

2.Nginx日志切割

修改nginx.conf配置文件,使AWSTATS支持分析日志格式

vim /usr/local/nginx/conf/nginx.conf

将log_format main 到 access_log  前头的#号删掉

3.编写定时切割日志脚本

vim /usr/local/nginx/nginx_log.sh

#!/bin/bash#log_path="/usr/local/nginx/logs"pid_path="/usr/local/nginx/logs"date=$(date -d "yesterday" "+%Y%m%d")outdate=$(date -d "7 days ago" "+%Y_%m_%d")delete_path=$log_path/$outdatemv $log_path/access.log  $log_path/access.log_$date.logmv $log_path/error.log   $log_path/error.log_$date.logrm -rf $(find $log_path  -name "*.log" -mtime +7 -type f)kill -USR1 `cat $pid_path/nginx.pid`

第二种切割日志脚本

vim /usr/local/nginx/nginx_log.sh

#!/bin/bash# This script run at 00:00mv   /usr/local/nginx/logs/access.log /usr/local/nginx/logs/access_$(date  -d "yesterday" +"%Y%m%d").log#find /usr/local/nginx/logs/access_$(date-d  "yesterday" +"%Y%m%d").log -mtime +20 -exec rm -rf {} \;kill -USR1 `cat  /usr/local/nginx/logs/nginx.pid

4.给脚本加上可以执行的权限

chmod +x /usr/local/nginx/nginx_log.sh

5.安装awstats

wget  http://awstats.sourceforge.net/files/awstats-7.0.tar.gz

tar xvf awstats-7.0.tar.gz

mv awstats-7.0 /usr/local/awstats

chown -R root:root /usr/local/awstats

6.配置awstats

cd /usr/local/awstats/tools

./awstats_configure.pl

Config file path (‘none‘ to skip web  server setup):

none #这里不是apache,写none,跳过#

file (required if first install) [y/N]  ?输入y #创建一个全新的统计

Your web site, virtual server or  profile name:

> yzg   #被统计网站的名字,随便起 #

其他的全部按回车直到结束。

7.修改统计日志文件的路径

# vim /etc/awstats/awstats.benet.conf

LogFile="/usr/local/nginx/logs/access_%YYYY-0%MM-0%DD-24.log"

SiteDomain="yzg"

HostAliases="yzg www.yzg 127.0.0.1  localhost"

DirData="/var/lib/awstats"      #日志数据库路径

8.mkdir -p /var/lib/awstats

/usr/local/awstats/wwwroot/cgi-bin/awstats.pl  -update -config=yzg

Error: Couldn‘t open server log file  "/usr/local/nginx/logs/access_20150403.log" : 没有那个文件或目录

上面的报错是说没有找到你指定的那个文件目录,手动创建一个

  touch  /usr/local/nginx/logs/access_20150403.log

/usr/local/awstats/wwwroot/cgi-bin/awstats.pl  -update -config=yzg

看到这个就说明成功的运行了日志切割和awstats。

在 Apache 上,可以直接打开 Perl 程序的网页查看统计。但本文开始时已经提到,Nginx 对 Perl 支持并不好,所以我们要换个方法,利用awstats 的工具将统计的结果生成静态文件。

9.Awstats生成静态文件

/usr/local/awstats/tools/awstats_buildstaticpages.pl  -update  -config=yzg -lang=cn -dir=/usr/local/nginx/html/awstats  -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl

10.修改nginx配置文件

 vim/usr/local/nginx/conf/nginx.conf

在文件末尾添加如下行

include /usr/local/nginx/conf/vhosts/*conf;

在server{ 添加如图

11.进入浏览器

http://localhostIP:8000(端口)/awstats.yzg.html

12.定时计划任务

vim /usr/local/nginx/awstats.sh

#!/bin/bash/bin/bash  /usr/local/nginx/nginx_log.sh/usr/local/awstats/wwwroot/cgi-bin/awstats.pl  -update -config=benet/usr/local/awstats/tools/awstats_buildstaticpages.pl  -update  -config=benet-lang=cn -dir=/www/site/awstats   -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl

chmod +x /usr/local/nginx/awstats.sh

13.添加到crontab -e

00 00 * * * /usr/local/nginx/awstats.sh

时间: 2025-01-01 12:23:38

nginx awstats 安装配置和日志分析的相关文章

实战Puppet 集中配置管理系统(3)——Puppet dashboard与nginx+passenger安装配置

     本次实验内容紧接前两次实验,第一节内容主要介绍PUPPET的安装认证与资源定义,第二节主要写apache与nginx模块的应用,本次介绍Puppet dashboard与nginx+passenger 的安装,Puppet dashboard 是用以 web 方式管理 puppet.puppet 默认使用基于 Ruby 的WEBRickHTTP 来处理 HTTPS 请求,单个服务器使用Apache/Nginx+Passenger 替换掉 WEBRickHTTP,Passenger 是用

手把手教你nginx基础安装配置

手把手教你nginx基础安装配置! 一.Nginx安装及简单配置: 安装环境和依赖的包: #yum groupinstall "developmenttools" "server platform development" # yum -yinstall pcre-devel #yum install openssl-devel 下载相关nginx源码包: #wgethttp://nginx.org/download/nginx-1.6.2.tar.gz 解压缩源码

nginx+awstats安装过程

awstats来来回回也装了好多遍了,每次都是现装现查,隐约的记得整个配置比较麻烦,中间有几个需要特别注意的地方,又记不得那些需要特殊对待,只能边找资料边回忆,最终还是搞出来了,在此分享给大家. 首先去官网下载最新的安装包. wget http://jaist.dl.sourceforge.net/project/awstats/AWStats/7.3/awstats-7.3.zip unzip awstats-7.3.zip cd awstats-7.3 查看下配置结构 [[email pro

nginx的安装配置详解

title: nginx的安装配置详解tags: nginx,虚拟服务器,curl nginx的安装配置详解 1. 介绍各个常用的服务端口 21 ftp :22 ssh:25 smtp:3306 mysql:873 rsync:3389 远程桌面:161 snmp:111 rpcbind:80 www http:443 https:110 pop3:53 dns:514 rsyslog 我们常用的nslookup和dig查询域名解析工具的安装包为bind-utils,如yum install b

Nginx+nagios安装配置

Nginx+nagios安装配置 [[email protected] ~]# vi /etc/nginx/nginx.conf server { listen 80; server_name localhost; auth_basic "Nagios Access"; auth_basic_user_file /usr/local/nagios/passwd; location / { root /usr/local/nagios/share; index index.html in

webpy+nginx+uwsgi安装配置

转:(1)安装Nginx1.1 下载nginx-1.0.5.tar.gz并解压1.2 ./configure (也可以增加--prefix= path指定安装路径)此时有可能会提示缺少pcre支持,如果要安装pcre的话可以通过 yum install pcre-devel 来实现安装1.3 make1.4 make install (2)安装uWSGI2.1 下载uwsgi-0.9.8.2.tar.gz并解压2.2 make在安装uWSGI的时候有可能提示说是libxml2不存在,针对此情况,

Django Nginx+uwsgi 安装配置

Django Nginx+uwsgi 安装配置 在前面的章节中我们使用 python manage.py runserver 来运行服务器.这只适用测试环境中使用. 正式发布的服务,我们需要一个可以稳定而持续的服务器,比如apache, Nginx, lighttpd等,本文将以 Nginx 为例. 安装基础开发包 Centos 下安装步骤如下: yum groupinstall "Development tools" yum install zlib-devel bzip2-deve

Nginx的安装配置和tomcat负载均衡

Nginx简介 什么是nginx? Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接,并且cpu.内存等资源消耗却非常低,运行非常稳定. nginx的应用场景 1.http服务器.nginx是一个http服务可以独立提供http服务.可以作网页静态服务器. 2.虚拟主机.可以实现在一台服务器上虚拟出多个网站. 3.反向代理,负载均衡.当网站的访问量达到一定

Nginx 基本配置和日志分析

最近在维护的一个项目,路由转发规则都统一通过Nginx转发,所以再次参考部分博文和书本,熟悉Nginx的基本配置,还有一个重点也是日志的分析 Nginx 常用模块是server块,location块. 常用的location块配置: 语法规则: location [=|~|~*|^~] /uri/ { … } = 表示精确匹配,这个优先级也是最高的 ^~ 表示uri以某个常规字符串开头,理解为匹配 url路径即可.nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~