AWStatsで、検索ワードが文字化けしてしまうのを対応してみる。
DecodeEncodedStringという関数でURIエスケープされた文字列を、単純に元に戻して表示しているので(そのままやんけ!)、これをUTF-8に対応させるべく修正する(※Jcode使ってます)。
sub DecodeEncodedString {
my $stringtodecode=shift;
$stringtodecode =~ tr/\+/ /s;
$stringtodecode =~ s/%([A-F0-9][A-F0-9])/pack(“C”, hex($1))/ieg;
Jcode::convert(\$stringtodecode, “utf8”);
return $stringtodecode;
}
ちなみに、最近バージョン6.3がリリースされました。6.2以前にあった重大なセキュリティーホールの修正が入ってるので、バージョンあぷしませう。