ソースを表示
Webalizer
のソース
移動:
案内
,
検索
'''Webalizer'''によるアクセス解析の設定にまつわるメモ。 ==経緯== 自分のWebサイトは'''さくらインターネット'''(以下、さくら)で運営している。さくらではWebalizerによるアクセス解析を標準で提供しているが、Webalizerそのものの設定を変更することは出来ないため、細かいところに手が届かなくて悔しい思いをしたりする。 ならば、自宅サーバにログを移送して、自宅サーバ上でログを解析すればいいだろうということで、自宅サーバへのWebalizerインストールをすることにした。 ==導入== 導入について紹介すべきところではあるが、あいにくFedoraCore4には最初からWebalizerがインストールされているため割愛とする。導入については以下のサイトで取り扱っているので、参考がてらリンクを置いておく。 [http://www.aconus.com/~oyaji/www/webalizer.htm WebalizerによるWebアクセスログ解析] ==ログ取得== まずは、さくらのサーバからログを取得するのが第一段階となる。そのためにはcronからftpにてログを取得するということになるが、ftpはいかにも不便なのでlftpを使用する。 ===lftpスクリプト=== lftpにてログファイルを取得するスクリプトを作成する。 getjslog.ftp.txt open ''SERVERNAME'' user ''USERNAME'' ''PASSWORD'' lcd /''SITENAME''/logs cd /home/''SITENAME''/log get access_log_20061231 ここで重要なのは、ログファイル名である。ログファイル名は日付が付けられたファイル名となっているため、ここは可変とする必要がある。 ===bashスクリプト=== lftpで使用するスクリプトを毎回作成し直すようにするbashスクリプトを作成する。 getjslog.sh #!/bin/bash cd /judstyle GETX="get " GET1B="access_log_" GET1C=`date +%Y%m%d` SCRIPTFILENAME="/''SITENAME''/getjslog.ftp.txt" LOGFILENAME="/''SITENAME''/getjslog.log" echo "open ''SERVERNAME''" > $SCRIPTFILENAME echo "user ''USERNAME'' ''PASSWORD''" >> $SCRIPTFILENAME echo "lcd /''SITENAME''/logs" >> $SCRIPTFILENAME echo "cd /home/''SITENAME''/log" >> $SCRIPTFILENAME echo $GETX$GET1B$GET1C >> $SCRIPTFILENAME lftp -f /''SITENAME''/getjslog.ftp.txt >> $LOGFILENAME 2>&1 cp -f /''SITENAME''/logs/$GET1B$GET1C /''SITENAME''/today.log webalizer -c /etc/webalizer.''SITENAME''.conf ===crontab設定=== このスクリプトを、自動実行させるために、crontabにスクリプト実行を設定する。 30 5 * * * /''SITENAME''/getjslog.sh ===さくらのログ=== さくらインターネットのサーバのログは、全体的にどうかは知らないけど、毎朝5:00に更新され、それまでの24時間分が記録される。なので、毎朝5:30にダウンロードし、そのままWebalizerを起動している。 ==Webalizer== Webalizerの設定に関しては前述のサイトに譲るが、基本的にはあちこちの設定値を好きなように変えるだけでよい。ただし、Webalizerはそれまでの解析履歴を保存するため、テスト中に何度も繰り返し解析するためには履歴を消去する必要がある。IncrementalNameとHistoryNameを毎回消去すれば問題ないだろう。 LogFileには、前述のログファイルを指定する。出力先も設定しておくこと。 /etc/webalizer.''SITENAME''.conf LogFile /''SITENAME''/today.log OutputDir /htdocs/webalizer ===フォント設定=== 個人的に明朝系フォントは嫌いだし、日本語と英字混在の環境ではフォントに馴染みがないということもあり、フォントを変更。また、等幅系フォントも小さすぎて目によろしくないので、そのフォントサイズも大きくしたい。 totalstyle.css *{font-family:sans-serif;} pre{font-family:monospace;font-size:small;} ここで問題なのは、小さいフォントを指定している各table内では、なんとsmallタグだけではなく直接fontsizeを指定しているところもある。これは直接Webalizerを直したいところであるが、それはメンテナンスを含めて手間がもったいないので、特に小さい全referer一覧などの詳細ページのみ対応するためにpreタグへの対策のみを行う。また、全体のフォントをゴシック系に変更している。 このCSSファイルを読み込むためには、以下の設定を追加する。 /etc/webalizer.''SITENAME''.conf HTMLHead <link rel="stylesheet" href="./totalstyle.css" type="text/css"> ===詳細設定=== もちろん、詳細を参照できるようにするため、以下の設定も追加。 /etc/webalizer.''SITENAME''.conf AllSites yes AllURLs yes AllReferrers yes AllAgents yes AllSearchStr yes AllUsers yes ===グループ設定=== さらに、今回の最大の目的であるグループ化も設定する。 /etc/webalizer.''SITENAME''.conf GroupReferrer yahoo.com/ Yahoo! GroupReferrer excite.com/ Excite GroupReferrer infoseek.com/ InfoSeek GroupReferrer webcrawler.com/ WebCrawler GroupReferrer google.co.jp/ Google.jp GroupReferrer goo.ne.jp/ Goo.ne.jp GroupReferrer livedoor.com/ Livedoor.jp GroupReferrer biglobe.ne.jp/ BIGLOBE.jp GroupReferrer search.nifty.com/ NIFTY.jp GroupReferrer infoseek.co.jp/ Infoseek.jp GroupReferrer aol.com/ aol GroupReferrer search.msn.co.jp/ MSN.jp ===自サイト設定=== サイト内でのリンクなど見てもしょうがないので、その設定も追加する。 /etc/webalizer.''SITENAME''.conf IgnoreReferrer http://www.''SITENAME''.jp/* IgnoreReferrer http://''SITENAME''.jp/* IgnoreReferrer http://''SITENAME''.sakura.ne.jp/* IgnoreReferrer http://blog.''SITENAME''.jp/* ==アクセス制限== ===.htaccess=== こんなものを他人に見られたらいやだなぁと思ってアクセス制限を設定する。ついでに、悪質な検索エンジン対策もする。.htpasswdについて、ここでは割愛。 /htdocs/webalizer/.htaccess AuthUserFile /htdocs/webalizer/.htpasswd AuthGroupFile /dev/null AuthName "Please enter your ID and password" AuthType Basic require valid-user order allow,deny allow from all deny from 85.255. deny from 60.24. deny from 60.25. deny from 60.26. deny from 60.27. deny from 60.28.17.33 deny from 60.28. deny from 60.29. deny from 60.30. ===robots.txt=== 念のため(気休めも含めて)検索ロボットへの設定を行う。 robots.txt User-agent: * Disallow: / ==外部リンク== *[http://www.aconus.com/~oyaji/www/webalizer.htm WebalizerによるWebアクセスログ解析] {{stub}} [[Category:ネットワーク|Webalizer]]
テンプレート:Stub
(
ソースを表示
)
Webalizer
に戻る。
個人用ツール
ログイン
名前空間
ページ
議論
変種
表示
閲覧
ソースを表示
履歴表示
操作
検索
案内
TOP
Portal
RecentChanges
JUDSTYLE.jp
ツールボックス
リンク元
関連ページの更新状況
特別ページ