2011-04-19 73 views
7

即使是最专业的网站也会犯这种错误,这令人厌烦。发布的文字会变成不可读的内容。我没有太多关于编码的信息。我只想知道如此艰难的基本事情。如何在网站中正确显示所有非英文字符?

  • HTTP编码是否限制了一些 个字符?
  • 用户是否需要发送有关 字符集/编码的信息?
  • 假设一切都按照原样到达 服务器,使用的编码是 保存导致问题的文本?
  • 这是关于浏览器 实现的东西吗?
  • 我们需要一些JavaScript技巧来 使它工作吗?

有没有绝对的解决方案呢?它可能有它的限制,但StackOverflow似乎使它的工作。

+1

你能提供一些你认为是正确和错误的例子吗? – 2011-04-19 19:53:50

+0

我希望现在更具体。 – 2011-04-19 20:29:33

+0

你有链接吗?这可能与丢失或错误的内容类型一样简单。 – 2011-04-19 20:58:36

回答

8

我怀疑一个需要确保整个堆栈处理与护理的编码:支持广泛的国际字符

  • 指定网页字体(CSS)。
  • 指定正确的lang/charset HTML标记属性,并确保浏览器使用正确的编码。
  • 确保使用头中指定的相应字符集发送HTTP请求。
  • 确保HTTP请求的内容在Web请求处理程序正确解码
  • 与国际友好的编码/整理(如UTF-9/UTF-16),而不是一个配置数据库/数据存储区只是支持拉丁字符(某些数据库默认)。

前几个通常由浏览器和Web框架选择处理,但如果你搞砸了数据库编码或使用有限字符集的字体,将没有人来保存你。