我将我的网站从本地测试服务器移动到 NameCheap 共享主机,现在我遇到了一个问题 - 一些页面没有正确显示 utf-8 特殊字符(而是显示问号)。所有页面都是 utf-8 编码的,所有数据库表也是如此。奇怪的是,有些页面显示正确,有些则显示不正确,看似随机的模式。
例如,我的索引页面很好,但我的个人资料页面不是。 faq.html 可以正常工作,但是当我将其重命名为 faq.php 时却不行。最奇怪的是,我有一个带有两个 JQuery 选项卡的页面,其中一个正确显示,另一个不正确!
有人可以帮我解决这个问题吗?
原文由 robert 发布,翻译遵循 CC BY-SA 4.0 许可协议
这确实是一个令人讨厌的问题,但您可以尝试这些。
首先,确保文件实际保存为 UTF-8 格式。
然后检查您的 HTML 标头中是否有
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
。您也可以尝试在 PHP 脚本的开头调用
header('Content-Type: text/html; charset=utf-8');
或将AddDefaultCharset UTF-8
添加到您的 .htaccess 文件中。