Awstats是一个免费非常简洁而且强大有个性的网站日志分析工具,昨天领导问最近网站访问情况,虽然用了各种命令把日志统计出来了,但是非常麻烦,以前只是在apache上安装过awstats,没有在nginx上安装过,为了更省事,今天只好在nginx上安装awstats了
安装awstats前要准备php环境
[root@localhost ~]# tar xvf awstats-7.2.tar.gz [root@localhost ~]# mv awstats-7.2 /usr/local/awstats[root@localhost ~]# chown -R root:root /usr/local/awstats[root@localhost ~]# chmod -R =rwX /usr/local/awstats[root@localhost ~]# chmod +x /usr/local/awstats/tools/*.pl [root@localhost ~]# chmod +x /usr/local/awstats/wwwroot/cgi-bin/*.pl[root@localhost ~]# cd /usr/local/awstats/tools/[root@localhost tools]# ./awstats_configure.pl //开始配置----- AWStats awstats_configure 1.0 (build 1.9) (c) Laurent Destailleur -----This tool will help you to configure AWStats to analyze statistics forone web server. You can try to use it to let it do all that is possiblein AWStats setup, however following the step by step manual setupdocumentation (docs/index.html) is often a better idea. Above all if:- You are not an administrator user,- You want to analyze downloaded log files without web server,- You want to analyze mail or ftp log files instead of web log files,- You need to analyze load balanced servers log files,- You want to 'understand' all possible ways to use AWStats...Read the AWStats documentation (docs/index.html).-----> Running OS detected: Linux, BSD or Unix-----> Check for web server installEnter full config file path of your Web server.Example: /etc/httpd/httpd.confExample: /usr/local/apache2/conf/httpd.confExample: c:\Program files\apache group\apache\conf\httpd.confConfig file path ('none' to skip web server setup):> none //这里用的是nginx,所以选择noneYour web server config file(s) could not be found.You will need to setup your web server manually to declare AWStatsscript as a CGI, if you want to build reports dynamically.See AWStats setup documentation (file docs/index.html)-----> Update model config file '/usr/local/awstats/wwwroot/cgi-bin/awstats.model.conf' File awstats.model.conf updated.-----> Need to create a new config file ?Do you want me to build a new AWStats config/profilefile (required if first install) [y/N] ? y //创建一个新的配置文件-----> Define config file name to createWhat is the name of your web site or profile analysis ?Example: www.mysite.comExample: demoYour web site, virtual server or profile name:> web //基于域名-----> Define config file pathIn which directory do you plan to store your config file(s) ?Default: /etc/awstatsDirectory path to store config file(s) (Enter for default):> -----> Create config file '/etc/awstats/awstats.web.conf' Config file /etc/awstats/awstats.web.conf created.-----> Add update process inside a schedulerSorry, configure.pl does not support automatic add to cron yet.You can do it manually by adding the following command to your cron:/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=webOr if you have several config files and prefer having only one command:/usr/local/awstats/tools/awstats_updateall.pl nowPress ENTER to continue... A SIMPLE config file has been created: /etc/awstats/awstats.web.confYou should have a look inside to check and change manually main parameters.You can then manually update your statistics for 'web' with command:> perl awstats.pl -update -config=webYou can also build static report pages for 'web' with command:> perl awstats.pl -output=pagetype -config=webPress ENTER to finish...[root@localhost web]# vim /etc/awstats/awstats.web.conf LogFile="/data/www/logs/web/web.access_%YYYY%MM%DD-24.log" //指定日志文件,这里设置的是昨天的所以-24,日志名:web.access_20141202.log SiteDomain="域名" //域名全部 www.tiger.comDirData="/usr/local/awstats" //指定awstats安装位置//日志分析后会存放到指定位置,nginx这用的是静态文件,apache是通过cgi程序读取统计结果数据库输出[root@localhost web]# /usr/local/awstats/tools/awstats_buildstaticpages.pl -update -config=web -lang=cn -dir=/usr/local/awstats/html/web/-update 更新-config=web awstats.pl会去读取-config中的参数,把web扩展成 awstats.web.conf-dir= 指定静态文件位置nginx配置文件如下:server { listen 80; server_name log1.tiger.com; root /usr/local/awstats/html; autoindex on; //目录显示 charset gb2312; access_log /data/www/logs/log.access.log; error_log /data/www/logs/log.error.log; error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } location / { } location ~ ^/icon/ { # 图标目录 root /usr/local/awstats/wwwroot; index index.html; access_log off; charset gb2312; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }最后可以将生成静态文件设置成定时脚本!