Windowsソフト、iPhoneアプリ、ゲーム音楽素材の「Meteoric Stream」 -> 資料室 -> サーバー関連 -> アクセス解析ツール「awstats」をCentOSにyumでインストールする

アクセス解析ツール「awstats」をCentOSにyumでインストールする

CentOS6にアクセスログ解析ツールのawstatsを導入したので、メモ書きです。
いつもながら、面倒くさがりなので、yumでさくっとインストールします。

$ yum install awstats


CentOS7でも同じだと思います。

次に、設定ファイルを作成します。
アクセス解析したいドメイン名が、「www.testhoge.com」として説明します。

設定ファイルをコピー
$ cp /etc/awstats/awstats.model.conf /etc/awstats/www.testhoge.com.conf
設定ファイルを編集
$ vi /etc/awstats/www.testhoge.com.conf
該当箇所を下記のように編集。
SiteDomain="www.testhoge.com"
HostAliases="www.testhoge.com testhoge.com 127.0.0.1 localhost"


集計ができるかどうかをテストします。
/usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=www.testhoge.com -update


問題なければ、cronに登録します。
$vi /etc/cron.daily/awstats
#!/bin/sh
/usr/share/awstats/wwwroot/cgi-bin/awstats.pl -config=www.testhoge.com -update
$ chmod +x /etc/cron.daily/awstats


ここからが本題。
デフォルトでは、localhostからしかawstatsの解析URLにアクセス出来ません。

Apacheの設定でIPアドレスを許可する設定をすれば良いのですが、
許可したIPアドレスから無制限にアクセス出来るのもちょっと怖いです。
なおかつ、IP許可するたびにApacheを再起動(or リロード)するのは嫌です。

そのため、以下を設定します。
・htaccessでIPアドレス許可出来るようにする
・万が一IP偽装されても良いようにBasic認証を設定する

# 赤字の箇所を追記および編集
$ vi /etc/httpd/conf.d/awstats.conf
<Directory "/usr/share/awstats/wwwroot">
Options None
AllowOverride All
Order allow,deny
Allow from 127.0.0.1
AuthUserFile /usr/share/awstats/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user

</Directory>

$ vi /usr/share/awstats/.htpasswd
適当にBasic認証用のパスワードを記述しておく

ここに、IPアドレス許可の設定を記述する。
(以下は、123.456.789.100を許可したい場合)
$ vi /usr/share/awstats/wwwroot/.htaccess
Allow from 123.456.789.100

設定が正しいかどうか確認。Syntax OKにならない場合は設定を再確認
$ httpd -t
Syntax OK

Apacheのリロード
$ service httpd reload


これで、「http://www.testhoge.com/awstats/awstats.pl」からアクセス出来るようになったはずです。
厳密に言えば、「https」でアクセス出来るように設定した方が良いと思います。

この記事の最終更新日:2019/07/23
最初に記事を書いた日:2019/07/23

この記事をシェアする

このエントリーをはてなブックマークに追加

関連記事

Meteoric Streamについて

管理人

Windowsソフト、iPhoneアプリ、ゲーム音楽素材の「Meteoric Stream」 -> 資料室 -> サーバー関連 -> アクセス解析ツール「awstats」をCentOSにyumでインストールする