3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。(jehupc.exblog.jpから移転中)

i-Filterのアクセスログで検索クエリ文字列に25が余分につく件

i-Filterでプロキシを構築してるんですが、アクセスログで日本語を含む部分(大抵検索エンジンでのクエリ内容)のURLエンコード文字列に余分に "25" という値が付いてしまっています。

例えばこんな感じ。

"3流プログラマ" でGoogleで検索した場合のi-Filter ログ文字列

3%25E6%25B5%2581%25E3%2583%2597%25E3%2583%25AD%25E3%2582%25B0%25E3%2583%25A9%25E3%2583%259E

"3流プログラマ" のURLエンコード文字列

3%E6%B5%81%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E

%記号の後の 25 が余分なわけですね。

さて、この25ですが、ACIIコード表によると、"%" を表しているようです。

つまり、2重URLエンコードとなっているわけですね。

で、i-Filterのサポートページで検索するとありました。

「i-FILTER」の「アクセスログ」に日本語等の「2バイト文字」が入っている場合、文字毎に“%25”という文字列が追加されているのはなぜです

上記のよると、、“,”がログに含まれていると、正常なログとして出力されないため、再度のエンコードをかけているようです。

ということで、アクセス生ログから検索クエリを探る時は一旦 "25" を削除してやる必要があるようです。

ちなみに、Web便利ツール/URLエンコード・デコードフォーム - TAG index Webサイさんでは、いつもURLデコードさせてもらって役立ってます。

(まぁ.Netでちょちょっと作ってもいんですが...)