迁移到新服务器后的 Wordpress 编码问题

Wordpress encoding issue after migrating to new server

我们已将我的一个客户网站的服务器从 CentOS CPanel 切换到另一个 CentOS CPanel 我们遇到了一些带有重音符号和单引号的违规行为。

出于某种原因,有些字符正常显示,有些则没有显示:

wrong encoding on different sentences

我尝试将 DB_CHARSET 更改为 utf8,并且我还尝试更改 table 排序规则但没有成功。 网站在以前的服务器上 运行 很棒。自从我们更改后,一切都是错误的。

其中一位用户在连接到站点时遇到问题,因为他的用户组时不时地切换。不知道有没有关系?

如有任何帮助,我们将不胜感激。

试试这个来修复 WordPress 中的字符问题:

如您所知,最新的 Wordpress 在 wp-config.php 中定义了 DB_CHARSET 和 DB_COLLATE 值。这实际上是这个问题背后的主要原因。要解决此问题,只需在 wp-config.php 文件中注释这两行。

  1. 打开 wp-config.php 文件并找到以下行

    define(‘DB_CHARSET’, ‘utf8’);

    定义(‘DB_COLLATE’,”);

  2. 将它们注释掉并保存该文件。评论后应该看起来像

    //定义('DB_CHARSET', 'utf8');

    //定义('DB_COLLATE', '');

现在将更新后的“wp-config.php”文件上传到您的 WebHost(覆盖旧文件)。

这个字符编码问题也可能在数据库升级后发生,所以记住这个技巧以防万一也无妨。

将 WordPress .sql 数据库从旧主机导入新主机时可能会遇到错误。

所以,再试一次 .sql 通过旧主机上的 phpMyAdmin 手动导出数据库文件,然后将 .sql 导入新数据库。尝试以下步骤;

  • 打开 phpMyAdmin & select 你的数据库
  • 单击数据库的 "Export" 选项卡
  • 单击 "Custom" 单选按钮 - 在标题为“Format-specific 选项:”的部分中,更改“[=19=”的选项]数据库系统或更旧的 MySQL 服务器,以最大限度地提高与 从 'NONE' 到 'MYSQL40' 的输出兼容性。
  • 滚动到底部并单击 "GO"。

现在您应该可以将 .sql 导入控制面板中的 phpMyAdmin。

仅供参考,我发现了问题。是服务器相关的。

我已经检查了安装在我的服务器上的 PHP 个扩展的列表,但有些丢失了...

我没有确切的列表,因为其中有很多缺失。

因此,对于那些有同样问题的人,请检查您的 PHP 版本和扩展。