我有一个备份服务器,可以自动备份我的实时站点,包括文件和数据库.
在实际站点上,文本看起来很好,但是当您查看它的镜像版本时,它会显示"?" 在一些文本中.该文本存储在新闻数据库表中.
以下是它在实时服务器上的屏幕截图,以及镜像服务器上的屏幕截图.
在将其备份到镜像服务器的过程中会发生什么?
以下文章将很有用
http://dev.mysql.com/doc/refman/5.0/en/charset-syntax.html
http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html
连接到数据库后,发出以下命令:
SET NAMES'utf8';
确保您的网页也使用UTF-8编码:
PHP还提供了几个对转换有用的函数:
http://us3.php.net/manual/en/function.iconv.php
http://us.php.net/mb_convert_encoding
在"镜像"服务器(有问题的服务器)上编辑Apache配置文件,并注释掉以下行:
AddDefaultCharset UTF-8
然后重启Apache:
service httpd restart
问题是"AddDefaultCharset UTF-8"行覆盖了.html文件中指定的Content-Type; 例如:
最常见的症状是127以上的显示为黑色菱形其上具有问号该字符码(在Chrome,Safari或Firefox)或作为小盒子(在IE和Opera).Microsoft Word生成的HTML文件通常包含许多此类字符,最常见的字符代码为160 = 0xA0,相当于" " 在Windows-1252编码中,经常在span标签之间找到,如下所示:
ááá