当前位置:  开发笔记 > 编程语言 > 正文

使用CGI :: Application获取latin1而不是UTF-8

如何解决《使用CGI::Application获取latin1而不是UTF-8》经验,为你挑选了1个好方法。

我正在使用CGI::ApplicationUTF-8数据.

在HTML中,我将编码设置为UTF-8,就像这样



  
    
  
  

但输出被视为latin1,因为特殊字符显示为2个字符.

Firefox中的页面信息表示,ISO-8859-1尽管有HTML标题,页面仍会进行编码.

我只能找到关于这个问题的这两个 帖子,但它们已经陈旧且非常复杂.

有谁解决了这个问题?

更新:以下是FireBug的HTTP标头.

Response Headers
Date    Tue, 26 Apr 2011 09:53:24 GMT
Server  Apache/2.2.3 (CentOS)
Connection  close
Transfer-Encoding   chunked
Content-Type    text/html; charset=ISO-8859-1

Request Headers
Host    example.com
User-Agent  Mozilla/5.0 (X11; Linux x86_64; rv:2.0) Gecko/20100101 Firefox/4.0
Accept  text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language en-gb,en;q=0.5
Accept-Encoding gzip, deflate
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive  115
Connection  keep-alive

我注意到如果我强制使用UTF-8 FireFox->Web Developer->Character Encoding->Unicode (UTF-8),如果看起来正确的话.



1> Quentin..:

您的HTTP标头:

Content-Type text/html; 字符集= ISO-8859-1

...声称文档编码为拉丁文1.真正的HTTP标头优先于HTML 数据.

$webapp->header_add(-type => 'text/html; charset=UTF-8');

...如果我正确阅读文档,应该做的工作.

推荐阅读
和谐啄木鸟
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有