Vine Linux アクセス解析
Webalizerでアクセス解析
webalizer をインストール

# apt-get install webalizer

Webalizer設定  

設定ファイル編集

# vi /etc/webalizer.conf

LogFile /var/log/
apache2/access_log    access_logのパス(httpdをapache2に変更)
OutputDir /home/httpd/html/webalizer    
デフォルト(解析結果を納めるディレクトリ)
HistoryName /home/httpd/html/webalizer/webalizer.hist   
変更
Incremental yes    
デフォルト(解析結果を保存)
IncrementalName /home/httpd/html/webalizer/webalizer.current   
変更
HostName
www.xxmain1xx.net    解析対象ホス
PageType php  
 追加拡張子(私の環境では不要htm*とcgiがあれば良い)

編集終了 保存

 
 
統計結果ファイルを作成  

# /usr/bin/webalizer -c /etc/webalizer.conf


これで、
http://www.xxmain1xx.net/webalizer/
で解析結果が見られるようになる。


 
 
http://ドメイン/~ユーザー名でアクセスできるようにする
各ユーザーごとに個別で利用する場合

webalizer.confを各々のユーザフォルダにコピー
# cp /etc/webalizer.conf /home/ユーザー名   

各々のユーザーフォルダー下にWebalizer解析結果保存フォルダー(/webalizer)を作成

# mkdir /home/
ユーザー名/public_html/webalizer  


各ユーザーの設定ファイル/home/ユーザー名/webalizer.confを編集
(各ユーザー各々編集)

# vi /home/
ユーザー名/webalizer.conf
LogFile /var/log/apache2/ユーザー名/access_log
OutputDir /home/
ユーザー名/public_html/webalizer
HistoryName /home/
ユーザー名/public_html/webalizer/webalizer.hist
IncrementalName /home/
ユーザー名/public_html/webalizer/webalizer.current
HostName xxmain2xx.com    
ユーザードメイ

各ユーザーの解析ファイルを/home/ユーザー名/public_html/webalizer下に作成するようにする

# /usr/bin/webalizer -c /home/
ユーザー名/webalizer.conf 

  これで、 http://www.xxmain2xx.com/webalizer/や
http://www.xxmain1xx.net/~ユーザー名/webalizer/
でアクセスが可能になる。
 
     
解析結果の自動更新
   

実行スクリプトの作成

# vi webalizer.sh


以下を入力する

#!/bin/sh
/usr/bin/webalizer -c /etc/webalizer.conf
/usr/bin/webalizer -c /home/ユーザー名/webalizer.conf   複数ユーザーの場合各ユーザー毎記述

編集終了 保存


実行権を与える

# chmod 755 webalizer.sh


cronに登録
# crontab -e

20 04 * * * /root/webalizer.sh   
毎日4時20分に実行

編集終了 保存


cronを再起動

# /etc/rc.d/init.d/crond restart


crondを停止中:                [
OK ]
crondを起動中:                [
OK ]

AWStatsでアクセス解析
  Webalizerより詳細なアクセス解析が出来るAWStatsを導入する    
URLをデコードするために必要となるJcodeをインストールする

CPANモジュールを起動

# perl -MCPAN -e shell

cpan[1]> install Jcode   
install Jcodeを入力
cpan[2]> exit     
exitを入力

# tar zxf Jcode-2.00.tar.gz
   解凍

AWStatsダウンロードとインストール

# wget http://www.bflets.dyndns.org/AWStats66_Jpn.tar.gz
# mv AWStats66_Jpn.tar.gz /usr/local/bin
# cd /usr/local/bin    
ディレクトリ移動
# tar xvzf AWStats66_Jpn.tar.gz  
展開

AWStatsを置くディレクトリの作成

# mkdir /home/httpd/
cgi_bin0/awstats    本体を置く場
# mkdir /home/httpd/
cgi_bin0/awstats/icon   iconを置く場所

設定ファイルの移動

# cd /usr/local/bin/AWStats66_Jpn/wwwroot/  
ディレクトリ移動
# cp -rf cgi-bin/* /home/httpd/
cgi_bin0/awstats   コピー
# cp -rf icon/* /home/httpd/
cgi_bin0/awstats/icon   コピー
# cd /home/httpd/
cgi_bin0/awstats     ディレクトリ移動
# cp awstats.model_jp.conf awstats.conf
   日本語設定ファイルをコピー

AWStats設定ファイルの編集

# vi /home/httpd/cgi_bin0/awstats/awstats.conf


ログの保管場所を指定

LogFile="/var/log/
apache2/access_log.utf8"  httpd→apache2変更  .utf8を付加

サイトのドメインを指定

SiteDomain="
xxxmain1x.net"

DNSの設定
DNSLookup=0  
逆引きを行わないので0指定

CGIスクリプトのディレクトリを指定

DirCgi="/
cgi_bin0/awstats"

画像ディレクトリを指定
DirIcons="/
cgi_bin0/awstats/icon"

アクセス解析対象外の指定
SkipHosts="127.0.0.1 REGEX[^192.168.0.]"

表示言語を指定
Lang="jp"

編集終了 保存

手動でApacheのログを変換しアクセス解析してみる
アクセスログファイルを手動で、utf8形式にログを変換してみる

属性変更

# chmod 755 /home/httpd/
cgi_bin0/awstats/utf8_decode.pl
# chmod 755 /home/httpd/
cgi_bin0/awstats/awredir.pl
# chmod 755 /home/httpd/
cgi_bin0/awstats/awstats.pl

# /home/httpd/cgi_bin0/awstats/utf8_decode.pl < /var/log/apache2/access_log > /var/log/apache2/access_log.utf8

手動でアクセス解析を実行する
# /home/httpd/cgi_bin00/awstats/awstats.pl -config=awstats.conf -update

ブラウザから確認できるようにawstatsディレクトリのアクセス権を変更


# chown -R
ユーザー /home/httpd/cgi_bin0/awstats

ブラウザで確認してみる
  http://192.168.0.206/cgi_bin00/awstats/awstats.pl
OKのようだ♪♪
   
     
定期的に、ログの結合と変換、自動実行させる

自動実行スクリプトの作成

# vi awstats.sh


以下を入力

#!/bin/sh

ALOG=/var/log/httpd/access_log
A1LOG=/var/log/httpd/access_log.1
NEWLOG=/var/log/httpd/access_log.new
UTF8LOG=/var/log/httpd/access_log.utf8
UTF8DECODE=/home/httpd/html/
cgi-bin0/awstats/utf8_decode.pl
AWSTATS=/home/httpd/html/
cgi-bin0/awstats/awstats.pl
LOG=/var/log/awstats.log

cat $ALOG > $NEWLOG
cat $A1LOG >> $NEWLOG

$UTF8DECODE < $NEWLOG > $UTF8LOG

$AWSTATS -config=awstats.conf -update > $LOG

chmod 600 $LOG

編集終了 保存


スクリプトに実行件を与える

# chmod +x awstats.sh


Cronの編集
# crontab -e


21 04 * * * /root/awstats.sh    
追加(毎日4時21分にスクリプト実行)

保存終了


Cron を再起動する

# /etc/rc.d/init.d/crond restar
t

crondを停止中:                [
OK ]
crondを起動中:                [
OK ]

     
2014.09.17