【发布时间】:2013-02-25 03:44:45
【问题描述】:
在我的 html5 页面中,大约 80% 的字符串是 unicode。与我的本地服务器完美配合。上传到我的在线服务器时,页面未正确显示 unicode 内容。相反,它们都是问号!
我在开始编码页面时已经设置了元标记:
<meta charset="UTF-8">
在检查 Chrome 浏览器上收到的响应标头时,“utf-8”编码不存在。所以我添加了 php header() 来发送这样的 HTTP 标头:
header('Content-type: text/html; charset=utf-8');
现在,响应标头显示 utf-8 编码,但页面未呈现 unicode 字符串。还是问号!
我使用了我的 cPanel(在线服务器)中的文件管理器,当我选择在线编辑页面时,它会打开 utf-8 编码的页面并完美呈现!所以,这意味着文件的上传没有搞砸。对吧?
我也试过这个元标记(替换短的):
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
还是没用! Unicode 内容不是来自数据库。它在页面上是完全硬编码的。
通过 Google Chrome、Firefox 和 Internet Explorer 测试。都显示一样!关于我应该在哪里调整的任何想法?
我的服务器是HostGator提供的VPS。
【问题讨论】:
-
可以显示这些页面的示例吗?
-
感谢 Akam。通过将编码设置为不带BOM的utf-8找到了解决方案。 :)
-
@halfer:谢谢,下次会按照这个程序进行。 :)
-
@halfer:完成。看看下面的答案。 :)
-
太好了,谢谢@Akhilesh!
标签: php html unicode character-encoding