如何让服务器完全支持 UTF-8 编码?

想让服务器支持完整 UTF-8 编码的 Web 应用,但总是退回到 ISO-8859-1。

配置是 MySQL 5.6、PHP 5.5 和 Apache 2.2。

想知道具体地该在哪里设置编码?有没有必须要做的配置清单什么的,还麻烦指导一下。

阅读 8.5k
2 个回答

mysql:
默认配置可以不用动,默认的lantin1编码支持utf-8的存储于读取。mysqldump备份的时候注意一下skip-charset即可。

php&apache:
在脚本的开头设置一下header("Content-Type:text/html;charset=UTF-8")
或者修改apache的配置(http.conf) AddDefaultCharset utf-8

html:
在生成的html页面中,添加

告知浏览器页面使用的编码,这样浏览器post提交上来的文本才会是utf-8的。

最后也是最重要的,你得保证你的页面文本本身是utf-8的,否则编码是gbk的,强制声明成utf-8的,浏览器显示出来也是乱码。

希望能帮到你 :)

mysql : set names utf8

php:
header Content-Type:text/html;charset=UTF-8
开发编码用UTF8

apache 不需要配置

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题