10 个最常见的 WordPress 错误及修复方法

People vector created by pikisuperstar – www.freepik.com

文章来源

WordPress 在内容管理领域已经有超过 15 年的历史了。它是目前最流行的内容管理系统。WordPress 基于 PHP 和 MySQL。 它为用户提供了诸多方便的功能,使用户能够在短时间内创建交互式和响应式网站。WordPress 支持大量不同的插件,使网站开发更加轻松快捷。

如果你已经使用 WordPress 有一段时间了,你可能已经注意到了一些错误和问题,这些错误和问题在每个 WordPress 网站中都是常见的。这些错误很可能是每个 WordPress 网站都会出现的。本教程不仅可以帮助你了解常见的错误,还可以教你解决这些错误。下次遇到这些错误时,你就可以马上准备好解决这些错误了。

1. 建立数据库连接时出错(Error Establishing a Database Connection)

如果您的 WordPress 网站与 MySQL 数据库连接出现问题,您就会遇到上述消息。

如果 wp-config.php 文件中的数据库配置信息与实际的数据库信息不匹配,就会出现这个问题。这是一个保存在 WordPress 网站根目录下的配置文件。这个问题也可能是由于您的主机提供商或者您的网站被入侵造成的。

检查数据库名称、用户名和密码是否正确。在大多数情况下,设置正确的配置信息就能解决这个问题。你也可以联系你的主机支持来解决这个问题。

2. 重定向循环(err_too_many_redirects)

这个问题很可能是由于服务器配置错误 或 插件重定向功能设置不正确 或 WordPress 设置不正确导致的。

清除浏览器的 cookie 和缓存,然后清除 WordPress 的缓存插件的缓存,看看是否能解决这个问题。

如果问题仍然存在,请尝试清除 CDN 缓存或暂时禁用它。

进入你的 WordPress 后台,进入设置,检查 WordPress 的 URL 设置是否正确。

如果你无法进入 WordPress 的后台,你也可以从 wp-config.php 文件中查看。这个配置文件位于/home/user/public_html/wp-config.php/htdocs/wp-config.php。在该文件中添加以下代码。

define('WP_HOME','你的网址');
define('WP_SITEURL','你的网址');

(网址应包含 HTTP/HTTPS 前缀)

另外,在 public_html 或 htdocs 文件夹里面寻找.htaccess 文件。删除掉原先的内容,添加下面的代码。

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

保存更改并刷新您的网站。现在你应该可以访问你的网站了。

3. 错误网关(502 Bad Gateway)

遇到这样的问题的原因有很多。

当你想从网站上获取信息时,你会用浏览器向服务器发送请求,如果途中有东西没有得到处理,你就会遇到这个问题。

这种不良网关问题可能是由于:

  • 数据库中的 bug、
  • 服务器超时、
  • 防火墙、
  • PHP 代码有问题、
  • 有问题的插件
  • 或者是你的网站被 DDoS 攻击

时出现或导致的。

这个问题很容易修复。

首先,禁用你的 WordPress 网站的所有插件。你可以通过使用任何 FTP 软件(如 FileZilla)进入网站的根目录。

进入 wp-content 文件夹,然后将 plugins 文件夹重命名为 plugins_old 以禁用所有的插件。然后刷新你的网站。现在,把文件夹名改回原来的名字,然后到 WordPress 后台 > 插件 > 已安装的插件,逐一激活插件,找出有问题的插件。

你也可以检查一下你当前的主题是否有问题。使用 FTP 程序访问你的主题文件夹,位于网站根目录/wp-content/themes/。复制一个你在使用的主题到自己的电脑上,然后删除服务器里的主题。然后刷新网站。

如果你看到白屏,说明你的主题已经损坏了。你需要更换主题,或者联系主题的开发者来解决这个问题。

4. 内部服务器错误(Internal Server Error)

它发生在服务器出现严重错误时,或服务器过载时。

如果你遇到了这个问题,你首先需要检查.htaccess 文件是否损坏。将.htaccess 文件重命名为.htaccess_fault 后,进入 WordPress 后台中的设置 > 固定链接,点击保存按钮。这将生成一个新的.htaccess 文件。

另外,当 WordPress 的内存使用达到了 PHP 的内存上限时,也会遇到这个问题。

如果是有故障插件导致的问题,你也可以逐一停用插件。

最后,注意服务器的 CPU内存带宽使用,带宽占用过高(如遭受网络攻击)会导致 WordPress“一刻不停歇” 地运转,继而导致 PHP 使用了过多的内存和 CPU(表现为 CPU 图表一直为 100%、内存图表时常在 80% 到 100% 之间波动),并最终导致服务器过载。若是这种情况,请尝试重启服务器,WordPress 一般会在重启完成后恢复平常的状态。

若重启服务器后,内存、CPU 使用率及带宽一并恢复至之前的状态,则标明你的网站正在遭受攻击,需要采取对应的措施,如防火墙、CDN 等等。

5. “死亡白屏”

当你的网站出错时,就会遇到这种错误。

因为你看不到任何的错误,所以它相当的烦人。但也不是没有办法,以下是一些解决白屏问题的方法。

增加 PHP 的内存限制:当你的内存达到一定的上限时,你就可能会遇到这个问题。增加 wp-config 文件中的内存大小可以解决这个问题,详见稍后的 “7. 允许的内存容量已用完” 部分。

禁用有问题的插件和主题:检查有问题的插件,并禁用/删除该插件;删除有问题的主题,使用默认的主题。

如果问题仍然存在,请联系您的服务器提供商。

6. 无法将文件写入磁盘(Upload: Failed to Write File to Disk)

当您在向服务器上传或写入文件时,您可能就会遇到这个问题。

这个问题的发生是由于网站文件权限不正确造成的。

要解决这个问题,您需要更改文件权限。

使用 FTP 应用程序(如 FileZilla)登录到您的服务器。在根目录下找到 wp-content 文件夹。右击该文件夹,选择 “ 文件权限”。

此时会出现一个 “ 更改属性 “ 的对话框。进行以下更改。

  • 所有者权限:读取、写入、执行
  • 组权限:读取、执行
  • 公开权限:读取、执行
  • 数值:755
  • 递归到子目录。是
  • 仅适用于目录:是

点击 “确定” 保存设置。

7. 允许的内存容量已用完(Fatal Error: Allowed Memory Size Exhausted)

WordPress 默认的内存限制是 64MB。当 WordPress 内存用完了时,你就会遇到这个问题。

例子:

Fatal error: Allowed memory size of 33554432 bytes exhausted
(tried to allocate 2348617 bytes) in 
/test/123/public_html/wp-includes/plugin.php on line xxx

你可以通过编辑 wp-config.php 文件来改变 PHP 的内存限制,该文件位于网站根目录下的 public_html 文件夹中。

define('WP_MEMORY_LIMIT', '320M');

将限制修改为您所选择的大小,并保存。

8. “被锁在网站外面”

如果您忘记了密码或者您的网站被黑客入侵,您就会被 “锁在外面”。

你可以使用 “重置密码” 功能找回密码。

有时,恢复邮件可能需要很长时间才能到达您的收件箱,或根本没有发送邮件(在使用了 “禁用发送邮件” 插件的情况下)。

在这种情况下,你可以通过 PhpMyAdmin 轻松设置新密码。

登录到你的服务器控制面板(如宝塔等),点击 PhpMyAdmin,进入界面。进入 PhpMyAdmin 后,在左侧查找 wp_users 表(其中,“wp” 为你在安装时使用的数据库前缀),在 user_login 部分找到你的用户名。右键点击你的用户名,然后点击编辑。

你会发现 user_pass 字段,在这里输入你的新密码,然后在旁边的下拉菜单中选择 MD5,然后点击保存更改。现在你就可以使用新密码登录到你的 WordPress 后台。

9. 网站正在进行维护(Briefly Unavailable for Scheduled Maintenance)

当您刚刚将 WordPress 网站更新到新版本时,您可能会遇到这个问题。

WordPress 通常会创建一个.maintenance 文件来表示您的 WordPress 网站正在进行维护,并在更新完成后删除。在少数情况下,WordPress 忘记删除这个文件,从而导致问题发生。

你可以在删除根目录中的.maintenance 文件来解决这个问题。

在删除该文件之前,你需要确保你的 WordPress 更新已经成功完成。如果更新没有成功完成就.maintenance 文件时,可能会导致其他问题。

10. 网站排版错位

比如网站的侧边栏出现在主要内容的下方等等。

当您的主题的 HTML/CSS 出现问题时,就会出现这种情况。

请检查您最近编辑过的主题,并将其更改回原来的状态。

如果这个问题持续存在,你需要检查 HTML/CSS 代码是否有问题(如是否有语法错误等)。

若你搞不定这个问题,可以寻求主题开发者协助解决。

有时,错误的或过时的插件也可能会导致这个问题发生。进入网站后台 > 插件 > 已安装的插件,逐个停用激活的插件来排查问题。