【Linux】【AWStats】アクセスログ解析ツール(AWStats)のインストール、セットアップに関する備忘録

インストール
ここでは「/usr/share/awstats/」で動作させることを前提とした手順を記述する。
①以下のURLから最新のモジュールを入手する(今回はawstats-7.9.tar.gz)。
 https://awstats.sourceforge.io/
②入手したモジュールをサーバ上の任意のディレクトリに配置する。
 ここでは「/tmp」に配置
③次のコマンドをrootユーザで実行しインストールする。
cd /tmp
tar xvfz awstats-7.9.tar.gz
mv awstats-7.9 /usr/share/awstats

初期設定
次のコマンドを実施し、雛形の設定ファイルをコピーする。
cd /usr/share/awstats/wwwroot/cgi-bin
cp -p awstats.model.conf awstats.ドメイン名.conf
コピーしたファイル(awstats.ドメイン名.conf)を編集する。
  • 解析対象のログファイルを設定
  • ドメイン名を設定
  • DNSLookupの設定(アクセス元の名前解決を行う)
  • LoadPluginの設定
  • URLWithQueryの設定(クエリパラメタ毎に計上)
【変更前】
LogFile="/var/log/httpd/mylog.log"
SiteDomain=""
DNSLookup=2
#LoadPlugin="tooltips"
URLWithQuery=0

【変更後】
LogFile="/etc/httpd/logs/access_log"
SiteDomain="hoge.co.jp"
DNSLookup=1
LoadPlugin="tooltips"
URLWithQuery=1

解析を除外するIPアドレスの設定
コピーしたファイル(awstats.ドメイン名.conf)を編集し、解析を除外するIPアドレスを設定する。

【変更前】
SkipHosts=""
【変更前】
SkipHosts="127.0.0.1 XXX.XXX.XXX.XXX XXX.XXX.XXX.XXX"
↑XXX.XXX.XXX.XXXには除外したいIPアドレスを設定する。

レポートページ表示用のエイリアスと表示制限の設定
レポートページ表示用のエイリアスの設定と、解析結果を特定のIPアドレスからのみ表示てきるように、「/etc/httpd/conf.d」直下に(awstats.conf)を作成する。

【記載内容】
ScriptAlias /report/ "/usr/share/awstats/wwwroot/cgi-bin/"


    Options None
    AllowOverride None
    
        # Apache 2.4
        Require local
    
    
        # Apache 2.2
        Order allow,deny
        Allow from 127.0.0.1
        Allow from ::1
    
    Require all denied
    Require ip XXX.XXX.XXX.XXX

↑XXX.XXX.XXX.XXXには解析結果を表示する際のアクセス元のIPアドレスを設定する。

Webサーバ再起動
次のコマンドを実行しWebサーバを再起動する。
systemctl restart httpd

ログ統計情報の作成
次のコマンドを実行しログ統計情報の作成を行う。
/usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=ドメイン名 -update

アクセス解析結果画面の表示
ブラウザで「http://ドメイン名/report/」にアクセスする。
※「You don't have permission to access this resource.」になってしまい原因調査中。

ログ統計作成cron設定
ログ統計情報の作成処理を定時起動するようcron設定を行う。
「crontab -e」にて最終行に下記を追加する。
*/05 * * * * /usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=ドメイン名 -update > /dev/null 2>&1

以上