Charset问题!网页转移到另一台服务器

时间:2017-09-25 11:38:18

标签: php mysql apache utf-8 character-encoding

1)我将WEB页面迁移到另一台服务器!从Ms Server 2012 / Xampp到Cento7 / httpd。在Centos7网页上包含问号,其中应该是特殊字符“āīūņļš”。网页建立在PHP之上。

旧服务器正在运行旧的XAMP安装:

  • PHP版本5.4.27
  • 5.5.36 - MySQL

CentOS正在运行:

  • APACH / httpd的
  • PHP 7.0。*
  • 52年5月5日-MariaDB的

2)两台服务器都包含具有相同编码的文件和具有相同字符集的DB表,并且两台服务器都具有“服务器字符集是UTF-8 Unicode(utf8)”。

唯一的区别是“服务器连接整理”。旧服务器有“Collat​​ion”,CentOS有“utf8_general_ci”。

3)我试过了:

  • 将文件编码为utf8
  • 在元标记中定义utf8
  • header('Content-Type:text / html; charset = ISO-8859-1');和 header('Content-Type:text / html; charset = utf8');
  • mysqli_set_charset($ CON, “UTF8”);
  • httpd.conf中的AddDefaultCharset UTF-8

我只是不明白,为什么在一台服务器上一切正常,另一台服务器上的文字包含“?”当files / php code / db是一样的!是否有可能httpd没有启用某个模块?

还有一个问题!一些php文件和DB表具有不同的编码和字符集。我尝试将文件编码更改为UTF8,它解决了php文件中静态文本的问题。 db中的某些文本包含奇怪的字符,db包含大量信息。在某些情况下mysqli_set_charset($ con,“utf8”);但是当使用mysqli_set_charset时文本会随机消失!

0 个答案:

没有答案