Webalizerで解析すると日本語の検索語を使った場合、この文字列が 文字化けしよくわからなくなってしまう事があります。 ■文字化け対策 文字化けは、サーバ側と検索サイトの文字コード違いが原因です。 検索サイトは大抵UTF-8です。 # vi /usr/local/bin/convert.pl --- ここから --- #!/usr/bin/perl use Jcode; open (IN ,$ARGV[0]); while (<IN>){ $_ =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; Jcode::convert(\$_,euc); print $_; } close (IN); exit; --- ここまで --- # chmod 755 /usr/local/bin/convert.pl 続いて、PerlのJcodeって奴を入れます。 既に入っていれば無視してください。 # perl -MCPAN -e shell cpan> install Jcode づらづら文字が流れていきます。 /usr/bin/make install -- OK OKが出れば完了。 ■確認テスト # cd [Webalizerで結果が書き出されるPATH] # /usr/local/bin/convert.pl usage_解析したいファイル.html > temp # mv temp > usage_解析したファイル.html ブラウザーより確認すれば文字化けが解消できてると思います。 ■自動実行 事前にCronを設定していれば削除しておきます。 # vi /root/webalizer.sh --- ここから --- #!/bin/sh /usr/local/bin/webalizer #/var/www/html/webalizer/は自分の環境に変えてください。 for i in /var/www/html/webalizer/*.html do /usr/local/bin/convert.pl $i > $i.temp mv -f $i.temp $i done --- ここまで --- # chmod 755 /root/webalizer.sh # crontab -e 0 */4 * * * /root/webalizer.sh これで4時間毎に書き出してくれます。 |
■Apache >