即使编码正确,重音字母也无法在服务器上正确显示

时间:2010-10-13 14:19:49

标签: html xhtml utf-8 character-encoding

我用utf-8字符集写了一些html。 在HTML的头部还有一个

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 

本地一切正常,但当我将文件上传到服务器时,我看到了所有的字母

àèìòù etc

扭曲。

任何人都知道这是怎么回事?有可能服务器强制一个不是utf-8的字符集吗?

非常感谢

2 个答案:

答案 0 :(得分:4)

实际上,META标签并不是正确的UTF-8编码所需要的。您的服务器可能仍会在页面标题中将页面作为Content-Type: text/html; charset=ISO-8859-1发送。

您可以查看标题,例如使用Live HTTP Headers Firefox插件。

有很多关于UTF-8编码的秘诀并使其正常工作,您可能需要通过this page (UTF-8: The Secret of Character Encoding)来解释您需要知道的所有内容,并为您提供有关如何解决编码问题的建议。 / p>

回答你的问题:是的,可以强制服务器使用UTF-8,例如通过使用像这样的PHP headers()函数:

header('Content-Type:text/html; charset=UTF-8');

答案 1 :(得分:4)

尝试使用 utf-8编码保存实际文件。这对我有用。 我使用PHPStorm作为编辑器:File-&gt; File Encoding-&gt; utf-8