如何修复 WordPress 死机白屏(逐步)

WordPress 白屏死机是最常见的 WordPress 错误之一。这也是最令人沮丧的问题之一,因为没有错误消息,并且您被 WordPress 锁定。

白屏死机错误的另一个问题是,有时它只影响您网站的某个部分。

例如,您可能只会在 WordPress 管理区域内看到白屏死机,而其他一切正常。在其他情况下,您可能只会在特定帖子上看到它,而其他一切都很好。

在本文中,我们将通过查看不同的解决方案向您展示如何修复 WordPress 白屏死机。

修复 WordPress 白屏死机错误

注意:在对站点进行任何更改之前,请确保您已备份 WordPress 站点。如果您无权访问管理区域,请参阅我们的指南,了解如何手动创建 WordPress 数据库备份。

为什么您会在 WordPress 中看到死机白屏?

大多数情况下,当您看到白屏死机时,这意味着您网站上的脚本耗尽了内存限制。

无响应的脚本要么被您的WordPress 托管服务器杀死,要么只是超时。这就是为什么没有生成实际的错误消息,并且您看到的是纯白屏幕的原因。

WordPress显示白屏而不是网站

有时您可能会看到严重错误消息,而不是纯白屏幕。

无论您看到的是空白屏幕,还是“您的网站出现严重错误”的消息,都是相同的错误。

由于您网站上安装的主题或插件编码不佳,也可能发生此错误。如果您的网络托管服务器出现问题,有时可能会发生这种情况。

由于白屏错误可能由多种原因引起,因此需要有条不紊地进行故障排除才能修复。

问题是否出现在您的其他网站上?

如果您在同一主机帐户上安装了其他 WordPress 站点,那么您首先要检查问题是否也出现在其他站点上。

如果是,那么这是一个强有力的指标,表明您的 WordPress 托管服务有问题。这可能是影响他们服务的临时问题,您需要向他们的支持寻求更多帮助。

另一方面,如果问题仅发生在一个网站或该网站的特定部分,那么您就知道问题出在该特定网站上。

使用 WordPress 恢复模式修复白屏错误

如果白屏死机错误是由WordPress 插件或主题引起的,那么 WordPress 可能能够捕捉到它。

WordPress 5.2 中引入的新的致命错误保护功能有时可以捕获错误,因此您甚至可能看不到白屏。相反,您会看到该站点存在技术问题的消息。

技术难点

您还会在您的管理员电子邮件地址上收到一封主题为“您的站点存在技术问题”的电子邮件。

发送给管理员的技术问题电子邮件

此电子邮件消息将指出导致错误的插件,并且还将包含一个特殊链接。此链接将允许您登录到 WordPress 恢复模式并停用有故障的插件。

WordPress恢复模式

但是,如果您看到没有电子邮件或恢复模式选项的纯白屏死机,那么您需要手动修复错误。

增加内存限制

通常,发生此错误是因为脚本已耗尽内存并在中间退出。要解决此问题,您需要增加 WordPress 可用的 PHP 内存。这将允许脚本使用更多内存来完成它应该完成的工作。

您可以按照我们教程中关于如何在 WordPress 中增加 PHP 内存的说明进行操作。

禁用所有插件

如果增加内存限制没有帮助,或者如果您的内存限制很高,例如 256M 或 512M,那么您需要开始进行故障排除。

根据我们对该问题进行故障排除的经验,我们始终发现问题出在特定插件或主题上。让我们继续禁用所有插件。

如果您仍然可以访问 WordPress 管理区域,那么您只需转到插件»已安装插件页面。选择所有已安装的插件,然后在“批量操作”下拉菜单下选择“停用”。

通过 WordPress 管理区域停用所有插件

但是,如果您无权访问 WordPress 管理区域,则需要通过 FTP停用所有插件。

首先,使用 FTP 客户端连接到您的 WordPress 站点。连接后,转到 wp-content 文件夹,您将在其中看到“插件”文件夹。

重命名插件文件夹以停用所有插件

现在,您需要右键单击插件文件夹,然后选择重命名。您可以将插件文件夹重命名为 plugins-deactivated。

插件停用

您的 FTP 客户端现在将重命名插件文件夹。

WordPress 会寻找一个名为 plugins 的文件夹来加载所有插件。当它找不到文件夹时,它只会停用所有插件。

如果这解决了问题,则一次启用一个插件以查明问题的根源。找到导致问题的插件后,您可以将其替换为替代品或将问题报告给插件作者。

用默认主题替换主题

如果插件故障排除无法解决问题,那么您应该尝试将当前主题替换为默认主题。

首先,使用 FTP 客户端连接到您的网站并转到 /wp-content/themes/ 文件夹。它包含您网站上所有已安装的主题。

右键单击以选择您当前的 WordPress 主题并将其下载到您的计算机作为备份。

下载当前主题作为备份

接下来,您需要从您的网站中删除您当前的主题。右键单击您的主题文件夹并选择“删除”。您的 FTP 客户端现在将从您的网站中删除该主题。

删除当前主题

现在,如果您在您的网站上安装了一个默认的 WordPress 主题,例如(二十十八或二十九),那么 WordPress 将自动开始使用它作为默认主题。

但是,如果您没有安装默认主题,则需要使用 FTP 手动安装它。

如果这解决了问题,那么您应该查看主题的functions.php文件。如果文件底部有多余的空格,则需要删除这些空格,有时这样可以解决问题。

如果您在主题的 functions.php 文件中使用了编码不当的函数,那么它也可能导致白屏死机错误。

考虑从源头下载主题的新副本,然后安装它。

启用调试模式以捕获 WordPress 中的错误

如果到目前为止没有任何帮助,那么下一步是在 WordPress 中打开调试。这将允许您查看正在输出的错误类型。

只需将以下代码添加到您的wp-config.php 文件中。

define( ‘WP_DEBUG’, true);define( ‘WP_DEBUG_LOG’, true );

添加后,空白屏幕现在将显示错误、警告和通知。这些可能能够帮助您确定根本原因。

如果您没有看到任何错误,您可能仍需要检查调试日志。只需使用 FTP 客户端访问您网站上的 wp-content 文件夹。在那里您会发现一个新的 debug.log 文件,其中包含所有错误、通知和警告的日志。

调试日志

清除 WordPress 缓存

有时,您可能可以访问后端,但站点的前端却出现死机白屏。这可能是由于缓存插件而发生的。只需清空缓存即可。

有关详细说明,请参阅我们关于如何清除 WordPress 中的缓存的指南。

修复较长的文章

如果您仅在很长的帖子或页面上出现白屏死机,那么这个小技巧可能会奏效。

这个技巧基本上通过增加递归和回溯限制来增加 PHP 的文本处理能力。您可以将以下代码粘贴到您的 wp-config.php 文件中。

/** Trick for long posts */ini_set(‘pcre.recursion_limit’,20000000);ini_set(‘pcre.backtrack_limit’,10000000);

我们知道这是一个非常令人沮丧的错误,我们希望上述技巧之一为您解决了这个问题。您可能还想查看我们的WordPress 疑难解答指南,该指南教您自行捕获和修复 WordPress 问题应采取的步骤。