■
僕の管理しているWebサーバは、アクセスログの解析ツールとしてAWstatsを使っているのですが、
先月AUに搭載されたGoogle検索からのアクセスを集計できるようにしました。
その時の作業内容を書きますので、皆様も参考にしてみてください。
また、ご意見などありましたらよろしくお願いします。
まず、search_engines.pmを以下のように修正
@SearchEnginesSearchIDOrder_list1に以下を追加
==================================================
'ezsch\.ezweb\.ne\.jp'
==================================================
%SearchEnginesHashIDに以下を追加
==================================================
'ezsch\.ezweb\.ne\.jp','kddigoogle',
==================================================
%SearchEnginesKnownUrlに以下を追加
==================================================
'kddigoogle','query=',
==================================================
%SearchEnginesHashLibに以下を追加
==================================================
'kddigoogle','KDDI Google',
==================================================
これで無事集計ができるようになったと安心していたら、
文字化け?みたいな現象が発生していることがわかりました。
「検索文字列(キーワード)」に表示されているワードに
例えばこんな感じで意味不明な文字列がランクインしているのです。
・モバヒータテン
・モバヒー
恐らく正しくは
・モバゲータウン
・モバゲー
だと思い、調べたところ、
URLエンコードされた検索文字列が全て小文字に変換されて集計されていることが原因でした。
(URLエンコードされた値がCase sensitiveであることを僕は初めて知りました。)
・モバゲータウン(%83%82%83o%83Q%81%5b%83%5e%83E%83%93)
・モバヒータテン(%83%82%83o%83q%81%5b%83%5e%83e%83%93)
そこで少々強引ですが、awstats.plを以下のように変更しました。
==================================================
# Search engine with known URL syntax
my @paramlist=split(/&/,$KeyWordsNotSensitive?lc($refurl[1]):$refurl[1]);
↓
# Search engine with known URL syntax
my @paramlist=split(/&/,$refurl[1]);
==================================================
==================================================
# Search engine with unknown URL syntax
my @paramlist=split(/&/,$KeyWordsNotSensitive?lc($refurl[1]):$refurl[1]);
↓
# Search engine with unknown URL syntax
my @paramlist=split(/&/,$refurl[1]);
==================================================