ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Linux字符集不统一导致乱码的解决步骤(转)

Linux字符集不统一导致乱码的解决步骤(转)

原创 Linux操作系统 作者:ilg 时间:2019-05-29 11:21:05 0 删除 编辑
Linux字符集不统一导致乱码的解决步骤(转)

  referrers系统可以很好的显示反向链接,目前很多站点上显示的最新来源(referer)统计都是用的是Stephen的referrer统计系统。我们今天要讨论的不是它的安装问题,而是它的字符集乱码问题

  这个软件存在着字符集的问题,这个问题我想大家都会碰到,由于我的blog是UTF-8字符,而反向链接过来的国内好多网站都是GB2312,所以统计出来的时候GB2312就显示了乱码。非常之难看,所以有必要通过技术手段把字符集统一。

  在hedong的帮助下,终于把这个问题给搞定了。实际上就是使用icov和Text-Iconv-1.2来将GB2312变为UTF-8。 下面是具体步骤:

  1、检查iconv软件包是否安装

  iconv -V

  如果iconv不存在,则需要安装glibc-common*.rpm包。

  2、下载Text::Iconv模块,并安装

  wget http://search.cpan.org/CPAN/authors/id/M/MP/MPIOTR/Text-Iconv-1.2.tar.gz

tar zxvf Text-Iconv-1.2.tar.gz

cd Text-Iconv-1.2

perl Makefile.PL

make

make test

make install

  3、配置referrers.cgi文件

  在use CGI qw(:cgi-lib);后添加以下语句;

  use Text::Iconv;

my $converter = Text::Iconv->new("GB2312", "UTF-8");

  在# Print out the information那段代码钱增加以下类似语句

  if (index($durl,"baidu.com")>-1 ||index($durl,"msnfans.com")>-1 ||index($durl,"mybh.net")>-1 ||index($durl,"hed

ong.3322.org")>-1) {

$dtit=$converter->convert($dtit);

}

  以后都是手动添加相应需要转换字符集的网站。

  如果你是UTF-8传GB2312也是类似

  再次感谢hedong的帮助:)

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14102/viewspace-116260/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2002-06-18

  • 博文量
    1715
  • 访问量
    1300203