我有一个自托管的服务器,上面运行着nginx和PHP5-fpm,并且是在一台Debian(Raspbian wheezy)设备上。我的问题是UTF-8特殊字符(åäö)无法正常工作。我已经在网站头部设置了。所有文件都使用UTF-8编码而没有BOM。根据Fleshgrinder的答案,我已经添加了charset utf-8;到nginx.conf中,但没有结果。我该如何解决这个问题?
您的文件也必须使用UTF-8编码,并且您发送的HTTP头比元标记更重要。
要通过nginx以UTF-8编码(HTTP头)传递所有内容,请执行以下操作:
# /etc/nginx/nginx.conf
http {
charset utf-8;
}
但是重要的部分是,你的文件实际上必须以UTF-8编码,才能使任何东西正常工作。一个好的编辑器(例如Notepad2、Notepad++、NetBeans IDE、Adobe Dreamweaver等)可以让你更改文件的编码。
<?php header('Content-type: text/html; charset=utf-8'); ?>
即可。感谢你的帮助。 - justanotherhobbyistphp.ini
文件中设置default_charset = utf-8
。很高兴能够提供帮助。 - Fleshgrinder