有一次,我在搭建一个论坛,nginx服务已经搭建完毕,上传代码准备测试!

首先修改了后台密码

记一次网页字符集造成的乱码问题_第1张图片

 结果访问主页出现warning报错

查看了index.php的代码,字符集是uft-8

 

于是修改indx.php中所有charset=utf-8和删除首行utf-8,可是又出现以下的乱码现象!!
 

记一次网页字符集造成的乱码问题_第2张图片 

最后找个很多方法,发现是BOM的原因。因为utf-8编码文件含有的BOM,而php4,php5都是不支持BOM的。去掉BOM,问题就解决了。注意:使用vim/vi编辑器直接编辑很容易出现这样的错误。


具体步骤:可以用ultraedit打开一个新文件然后另存为时选择“utf-8 无BOM”即可。
以后遇到类似问题先用这个方法,编码问题先排除掉。