比較好用的工具有:
主要是對access.log進行分析;
- 安裝GoAccess,官方有詳細的介紹,這里記錄一下:
yum install glib2 glib2-devel GeoIP-devel ncurses-devel cd ~/software git clone https://github.com/allinurl/goaccess.git cd goaccess autoreconf -fi ./configure --enable-geoip --enable-utf8 make && make install #下面運行GoAcess,相關參數參考官網 goaccess -f /var/log/nginx/access.log -a #輸出為html文件 goaccess -f /var/log/nginx/access.log -a > /data/www/nginx.html
可以使用cron晚上定時生成當天的日志html。找不到libgeo的話可以加上:
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
- awstats的安裝
重新生成awstats的數據庫文件(文本數據庫),perl /xxx/awstats/wwwroot/cgi-bin/awstats.pl -update -config=example
wget http://prdownloads.sourceforge.net/awstats/awstats-7.2.tar.gz tar zxf awstats-7.2.tar.gz mv awstats-7.2 /usr/local/awstats cd awstats/tools perl awstats_configure.pl #這里會要求選擇日志種類,選擇none ;下一步,輸入自己的域名 #awstats_configure會在/etc/awstats/目錄生成相應域名的配置文件;例如:awstats.example.conf #下面配置日志格式: vim /etc/awstats/awstats.example.conf #將LogFile改為我們需要的日志文件 #這里是按天讀取前一天相應文件 #LogFile="/usr/local/nginx/logs/access_%YYYY-0%MM-0%DD-24.log" LogFile="/usr/local/nginx/logs/access.log" #日志格式 LogFormat="%host %time1 %methodurl %code %bytesd %refererquot %uaquot"
這里可能會出現AWStats did not find any valid log lines that match your LogFormat parameter...的問題,只要將原來的access.log文件重新生成即可。可以使用 logrotate -f /etc/logrotate.d/nginx
網上很多說要配置nginx分割日志的腳本,但是為什么要忽略logrotate這個工具呢?
下面配置Nginx站點
#復制官方的配置文件到nginx配置文件目錄下 cp /usr/local/awstats/tools/nginx/awstat-nginx.conf /etc/nginx/conf.d/vhost/awstats.conf #這里會出現找不到cgi-bin/fcgi.php的情況,因為這個文件在tools/nginx目錄下;復制過來就行 cp /usr/local/awstats/tools/nginx/fcgi.php /usr/local/awstats/wwwroot/cgi-bin/ #重啟Nginx service nginx reload
訪問站點的時候需要加上conf的參數,例如:
http://example.com:8081/cgi-bin/awstats.pl?config=example
后來發現,直接yum install awstats就可以安裝awstats了...一 一+
