nginx 支持perl 搭建 awstats

安装NGINX,并支持fastcgi perl
   下载 tengine-1.5.0.tar.gz
   tar zxf tengine-1.5.0.tar.gz
   cd tengine-1.5.0
   yum -y install pcre-devel GeoIP-devel
   ./configure --prefix=/usr/local/nginx --with-http_geoip_module=shared

   vi vhost.conf

server {
    listen       80;
    server_name  localhost;
    root         /usr/local/awstats/wwwroot;
    index        index.php;
    location ~* .pl$ {
        fastcgi_pass unix:/VODONE/server/nginx/logs/perl-fcgi.sock;
        access_log      off;
        include fastcgi_params;
    }
}


   perl加载模块

perl -MCPAN -e 'install "FCGI“
perl -MCPAN -e 'install "Getopt::Long"'
perl -MCPAN -e 'install "IO::All"'
perl -MCPAN -e 'install "Socket"'
perl -MCPAN -e 'install "Geo-IP"'
perl -MCPAN -e 'install "Geo-IPfree"'

   #检查模块 查看Getopt::Long.pm是否安装
   

perl -MGetopt::Long -e "print\"module installed\n\""


   增加下面代码:

   vi fastcgi_params      

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;


   下载 perl-fcgi.pl
   下载 start_perl_cgi.sh
   启动perl 执行 sh start_perl_cgi.sh

安装 awstats
   下载 awstats-7.2.tar.gz

cd /usr/local  && tar zxf awstats-7.2.tar.gz   && mv awstats-7.2  awstats
cd awstats/tools
./awstats_configure.pl    (按提示操作)
mkdir /var/lib/awstats   
cd /etc/awstats

   开户IP库支持下载 GeoIP.dat.gz, GeoLiteCity.dat.gz ,GeoIPASNum.dat.gz


   vi /etc/awstats/awstats.www.a.cn.conf

LogFile="gzip -d </data/log/13623_%YYYY%MM-24%DD-24_tar.gz |"    (可直接使用压缩日志)
LogType=W    (W 为web 日志)
LogFormat=1   
SiteDomain="www.a.cn"
DirData="/var/lib/awstats"
LoadPlugin="geoip GEOIP_STANDARD /etc/awstats/GeoIP.dat"        (分类IP归属)
LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /etc/awstats/GeoIPCity.dat"
LoadPlugin="geoip_org_maxmind GEOIP_STANDARD /etc/awstats/GeoIPOrg.dat


   cron 每天定时执行

/usr/local/awstat/wwwroot/cgi-bin/awstats.pl -update -config=awstat.a.cn


awstats 统计多域名
   默认 awstats 安装配置好之后会产生/etc/awstats/awstats.xxxxxx.conf,把awstats.xxxxxx.conf复制到awstats.common.conf,然后可以把 LogFile=“xxxx” 字段,SiteDomain=“xxx”字段,DirData=“xxx”字段,HostAliases=”xxx“字段注释了,这样awstats.common.conf就变成了一个基本的配置文件。
   比如现在要是想要加入域名,比如要加www.a.com        www.b.com

       cp /etc/awstats/awstats.www.a.cn.conf   /etc/awstats/awstats.www.a.com.conf
       cp /etc/awstats/awstats.www.a.cn.conf   /etc/awstats/awstats.www.a.com.conf
     修改配置文件
       vim /etc/awstats/awstats.www.a.com.conf

Include "awstats.common.conf" 
LogFile="/path/to/www.a.com_log"
SiteDomain="www.a.com" 
HostAliases="a.com www.a.com 127.0.0.1 localhost"


       vim /etc/awstats/awstats.b.conf

Include "awstats.common.conf" 
LogFile="/path/to/www.b.com_log" 
SiteDomain="www.b.com" 
HostAliases="b.com www.b.com 127.0.0.1 localhost"

       cron 定时执行    

/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update


访问awstats     1

http://localhost/cgi-bin/awstats.pl?config=www.a.cn



你可能感兴趣的:(nginx,日志分析,perl,awstats)