我最近遇到的奇怪问题。
我开发了一个简单的php网站引擎。所有可能的编码配置都已正确设置(<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
和apache虚拟主机位,因此内容类型http标头是正确的)。
那怎么了?
访问的php文件中的所有内容(例如index.php)都正常显示。
但是外部文件中包含的内容显示为问号。
见?中间框架是由index.php生成的,没关系,但顶部菜单栏是由包含文件生成的。如果我将菜单栏例程移到index.php它也看起来不错。
答案 0 :(得分:0)
如果它适用于生产环境,则可能是服务器配置错误。
首先,尝试检索生产环境中包含的文件,以检查问题是否来自此处。它可能确实是一个编码问题。确保以UTF-8编码(理想情况下没有BOM)。 Notepad ++具有将文件从编码转换为另一种文件的功能。
其次,尝试添加(如果尚未完成:如果它正确地发送HTTP头,它应该已经在这里)以下行到Apache配置:
AddDefaultCharset utf-8
不要忘记重启Apache服务器。
让我们知道它是否有效。 :)
答案 1 :(得分:0)