如何修复 WordPress 白屏死机 (WSoD)

已发表: 2021-08-21

您是否刚刚遇到可怕的白屏死机并且不知道该怎么办? 别担心。 有很多解决方案。 在本文中,我们将展示修复 WordPress 白屏死机 (WSoD) 的不同方法!

什么是 WordPress 死机白屏 (WSoD)?

白屏死机 (WSoD) 是管理员最糟糕的噩梦之一。 顾名思义,WSoD 是出现在 WordPress 网站上的全白屏幕。 在某些情况下,白屏仅出现在某些页面上,而不会出现在其他页面上,而在其他情况下,它会出现在整个站点中,包括 wp-admin。

这是最常见的 WordPress 错误之一,也可能是最令人沮丧的错误,因为它没有提供任何有关其原因的信息。 因此,故障排除是一项艰巨的任务。

如果空白屏幕没有为您提供有关错误的任何信息,我们如何知道白屏死机的原因可能是什么? 让我们展开常见的原因。

什么可能导致WordPress中的白屏死机?

WordPress 白屏死机最糟糕的事情之一是它很常见。 即使它没有给你任何可能导致它的线索,但通常有几件事是造成它的原因。 请记住,并非所有这些都必须同时发生才能触发 WSoD。 如果只有一件事出了问题,您面前可能会出现白屏。

WordPress白屏死机的一些可能原因是:

  • 插件和主题冲突:插件的更新可能会在插件和您的主题之间产生冲突。 相反,有时主题更新与其中一个插件冲突。 这两种情况都可能导致网站无响应和可怕的白屏。
  • PHP : 将脚本添加到functions.php文件时,编写不佳的代码或轻微错误可能会损坏主题文件或使其无响应。 这就是为什么在编辑任何核心文件之前,您应该始终创建站点的完整备份。
  • 集成:WordPress 集成之间的冲突,例如内容交付网络 (CDN)、SSL 证书等。
  • 损坏或丢失 WordPress 文件:损坏或丢失核心 WordPress 文件,如wp-config、.htaccess等。 有错误或写得不好的代码可能会损坏这些文件并导致 WSoD。
  • 内存限制:超过服务器内存限制或最大执行时间的 PHP 请求。 这意味着服务器没有足够的内存来处理请求,或者请求响应时间过长以至于超过了允许的最大执行时间。
  • 服务器:有时问题不是来自您的一端,而是来自主机端的服务器。 在这种情况下,错误必须由托管服务提供商解决。

如前所述,并非所有这些原因都必须同时发生才能触发白屏。 一个原因就足以导致您的网站无响应。 这就是为什么您应该首先确定导致白屏的原因。

在下一节中,我们针对每种原因汇总了所有可能的解决方案,因此您可以立即解决 WordPress 白屏死机

如何修复 WordPress 死机白屏

修复死机白屏可能是一项艰巨的任务。 但是,如果您有条理且有耐心,您将能够启动并运行您的网站。

这些是您可以采取的步骤来消除不需要的白屏:

  1. 清除浏览器缓存和 cookie
  2. 清除 WordPress 缓存
  3. 在 WSoD 之前检查您的步骤
  4. 进入恢复模式
  5. 停用所有插件
  6. 更改为默认主题
  7. 检查您的 WordPress 集成
  8. 启用调试模式
  9. 修复损坏的核心文件
  10. 调整服务器的内存限制或最大执行时间
  11. 联系您的主机

让我们仔细看看它们中的每一个。

1. 清除浏览器缓存和 Cookie

修复 WSoD 应该做的第一件事是检查问题是否来自浏览器。 为此,应清除浏览器的缓存和 cookie。

不同的浏览器有不同的方式来清除缓存的数据和 cookie。 例如,在 Chrome 中,您需要点击右上角的三个点图标,转到更多工具 > 清除浏览数据

如何修复 WordPress 白屏死机 (WSOD) - Chrome 清除浏览数据

将出现一个带有清晰浏览数据弹出窗口的新页面。 您可以在此处选择要删除的数据。 现在,检查缓存的图像和文件以及时间范围设置为所有时间的 Cookie,然后按清除数据 这将清除所有浏览器缓存和 cookie。

清除浏览数据和 cookie - Google Chrome

如果问题出在您的浏览器上,这将解决您的问题,您将能够访问您的网站。 但是,如果这不起作用,则问题出在您的网站上。 在这种情况下,请继续下一步。

2.清除WordPress缓存

修复白屏死机的另一个解决方案是清除 WordPress 缓存。 为此,您必须有权访问您的WP Admin Dashboard。

注意:在某些情况下,白屏死机也会影响管理页面,因此您被锁定并且无法访问您的站点。 如果是这种情况,此解决方案将无用,因此您可以继续下一个解决方案。

对于那些有权访问其WP Admin Dashboard 的人,您可以继续清除 WordPress 缓存。 默认情况下,WordPress 无法删除缓存数据,因此您需要使用插件。 在本教程中,我们将使用WP Rocket

首先,安装并激活插件。 之后,转到您的Admin Dashboard ,导航到Settings > WP Rocket然后单击Dashboard部分下的Clear cache按钮。 而已! 现在将删除所有缓存的数据。

使用 WP Rocket 插件清除 WordPress 缓存

现在,由于您已清除 WordPress 缓存数据,请检查问题是否仍然存在。 如果是这样,请继续下一步。

3. 复习 WSoD 之前的步骤

事先检查您的步骤可以帮助您解决和修复 WordPress 白屏死机。 复制您在 WSoD 出现之前所做的事情可能会导致您遇到确切的问题,或者至少给您提示首先导致错误的原因。

你需要做的是回顾并回忆你或你的任何队友在白屏出现之前所做的事情。 不幸的是,这一步我们无法为您提供太多帮助,这完全取决于您来定位错误。

但是,我们希望您在反思自己的行为时观察一些事情。

  • 首先,试着回忆一下你或你的队友在死机白屏出现之前正在做什么
  • 您是否安装了任何新的插件或主题或修改了任何预先存在的插件或主题?
  • 您是否更新了 WordPress、您的任何插件或您的主题?
  • 您是否对数据库或任何核心文件进行了任何更改?
  • 任何与 WordPress 的新第三方集成?
  • 在此期间,您的团队中是否有人访问过 WordPress? 他们在做什么?

这些只是供您参考的几个问题,以帮助您记住遇到死机白屏之前的所有行为。 这可以让您更好地了解导致问题的原因,并帮助您应用潜在的修复程序来恢复您的站点。

但是,有可能在白屏出现附近的任何时候都没有人在使用 WordPress。 在这种情况下,收回您的步骤可能不是一个可行的解决方案,您将不得不继续进行修复。

4.进入恢复模式

WordPress 5.2 的主要新闻之一是致命错误保护功能,因此您可能会看到一条消息,而不是没有信息的白屏,而是显示“该站点遇到技术问题。 请检查您的站点管理员电子邮件收件箱以获取说明。”

如果是这种情况,您应该检查您的管理员收件箱,看看是否有来自 WordPress 的电子邮件。 该电子邮件包含有关错误的详细信息和激活恢复模式的链接。 使用该链接并在恢复模式下访问您的WordPress 管理仪表板。 借助电子邮件中共享的错误详细信息,您可以相应地应用潜在的修复。

不过,如果这对您不起作用,或者您没有收到来自 WordPress 的任何电子邮件,请继续执行下一步。

5. 停用所有插件

与插件的冲突是 WordPress 中白屏死机的最常见原因之一。 如果您最近安装了新插件或更新了现有插件,则尤其如此。

要检查您的插件是否导致问题,您需要停用所有插件。 有多种方法可以批量停用所有插件。

如果您有权访问管理仪表板,请转到Plugins > Installed Plugins选择所有这些,然后将批量操作设置为Deactivate 。 然后,按应用按钮停用所有插件。

如何修复 WordPress 白屏死机 (WSOD) - 停用所有插件

相反,如果您无权访问管理仪表板,则需要通过 cPanel 或 FileZilla 等 FTP 客户端访问您的站点目录。 进入站点目录后,在wp-content文件夹下,您会找到另一个名为plugins的文件夹。 将文件夹重命名为插件以外的任何内容以停用所有插件。

停用 WordPress 插件 - FTP

停用所有插件后,转到您的站点并查看白屏是否消失。 如果是这样,那就开始一个一个地激活每个插件,直到再次遇到白屏找到触发死机白屏的插件。

有关如何批量停用所有插件的更多信息,请查看此分步指南。

确定有问题的插件后,您可以将插件回滚到以前的版本或联系他们的客户支持。 或者,您可以寻找其他类似的工具来实现相同的功能。

但是,如果停用插件不能修复 WordPress 白屏死机,您需要继续寻找原因。

6.更改为默认主题

如果停用插件不能解决 WSoD,那么您应该检查的下一件事是您的主题。 要检查问题是否出在主题上,请将其替换为默认主题。 如果这解决了问题,那么您就知道您的主题位于死机白屏之后。

要将您的主题替换为默认主题,您需要通过主机 cPanel 或 FTP 客户端访问您的站点目录。 进入目录后,找到wp-content文件夹,您将看到一个名为Themes的文件夹。 此文件夹包含您下载的所有主题。

主题文件夹 WordPress - FTP

主题文件夹中,找到您当前活动的主题。 以防万一,如果您还没有这样做,我们建议您进行备份。 之后,选择您的活动主题并将其删除。 这会将您的网站更改为默认的 WordPress 主题(例如二十一二十一)。

删除当前活动的 WordPress 主题 - FTP

如果您没有任何默认主题或之前已将其删除,则需要手动将默认主题文件上传到您的站点目录。

切换到默认主题后,访问您的网站并查看它是否解决了问题。 如果您没有看到白屏死机,那么您已经确认是您的主题导致了问题。 在这种情况下,如果您最近更新过主题,您可以将主题回滚到以前的版本。 此外,检查functions.php文件末尾是否有任何编程错误或空格。 这很可能会解决您的问题。 但是,如果没有,请联系主题开发人员以获得技术支持。

不过,如果切换到默认主题后白屏没有消失,那么问题就出在其他地方,您必须继续挖掘。

7. 检查您的 WordPress 集成

除了插件和主题之外,其他第三方工具也可以与您的 WordPress 网站集成。 这些示例可以是 SSL 证书或内容交付网络 (CDN),例如 Amazon Cloud Front。

重要的是要知道任何第三方集成之间的冲突都可能导致出现死机白屏。 例如,Amazon CDN 与您的主机提供的 SSL 证书之间的冲突可能会导致您的站点停机。

要确定问题是否与任何 WordPress 集成有关,您需要回忆在白屏出现之前执行的活动。 您应该问自己的一些事情是:您是否将任何新服务与您的站点连接? 您是否修改了已配置服务的设置? 等等。

如果您已经做了任何这些事情,您需要撤消这些更改,如果这解决了您的问题,那么您已经成功地确定了根本原因。 如果其中一些服务出现故障,那么您可能需要找到该服务的替代方案或联系服务提供商寻求解决方案。

但是,如果您的集成工作正常并且您仍然无法修复 WordPress 中的白屏死机,请继续下一步。

8.启用调试模式

如果到目前为止对您没有任何帮助,您可能需要启用调试模式。 这将帮助您找到可能导致 WSoD 的潜在 PHP 错误。

调试模式将站点面临的所有错误记录到debug.log文件中。 有了这些信息,您可能会找到白屏死机的原因并采取纠正措施来解决问题。

要启用调试模式,您需要访问站点目录。 您可以通过您的 cPanel 或使用 FileZilla 或任何其他 FTP 客户端来执行此操作。 进入站点目录后,查找wp-config.php文件并在文本编辑器中打开它。

wp-config.php WordPress

之后,搜索以下行:

 定义('WP_DEBUG',假)

并将其更改为:

 定义('WP_DEBUG',真)

启用调试模式。

如果wp-config.php文件中不存在上述代码行,只需将其添加到文件中并保存即可。

现在,要将错误记录到debug.log文件中,您需要启用 WordPress 调试日志记录。 为此,将以下行添加到您的wp-config.php文件并保存它。

 定义('WP_DEBUG_LOG',真); 

在 WordPress 中启用调试模式

这会将所有错误记录到debug.log文件中。 您可以在wp-content目录中找到debug.log文件。 日志文件包含有关网站所面临的所有错误的信息,因此通过这些信息,您可能能够找到问题并采取纠正措施。

完成调试后,不要忘记关闭调试模式和调试日志记录。 为此,只需在两个代码片段中将true更改为false

希望调试模式能给您一些见解并帮助您摆脱死机白屏。 但是,如果您仍然无法解决问题,请尝试以下解决方案。

9.修复损坏的核心文件

您最近是否在遇到白屏之前对核心 WordPress 文件(例如wp-config.php或 .htaccess)进行了任何更改? 如果是这样,您需要将修改后的文件恢复到其原始版本以撤消最近的更改。 如果由于这些更改而出现白屏死机,那么这种方法将解决问题。

要撤消最近的更改,您需要将 WordPress 的新副本下载到本地 PC。 只需访问 wordpress.org 并按获取 WordPress即可将最新版本的 WordPress 下载到您的计算机上。 下载完成后,解压缩 zip 文件,找到需要交换的文件,然后复制它。

如何修复 WordPress 白屏死机 (WSOD) - 下载 WordPress 的新副本

然后使用 FileZilla(或任何其他 FTP 客户端)或您的 cPanel 转到您的站点目录,并用您刚刚复制的新文件替换您的当前文件。 现在回到您的网站,看看它是否能解决问题。 或者,如果您有一个没有当前更改的站点的最新备份,您可以恢复它。

希望这能解决您的问题。 如果您仍然无法修复 WordPress 白屏死机,请继续下一个解决方案。

10.调整服务器的内存限制或最大执行时间

如果到目前为止没有任何效果,那么您可以尝试的最后一件事是调整服务器的内存限制或最大执行时间。 有时您的服务器没有足够的资源来处理传入的请求,因此您的站点出现故障,并出现白屏死机。

要解决此问题,您可以手动增加服务器的内存限制和最大执行时间。 问题可能与其中之一有关,有时也可能与两者有关。 首先,尝试增加内存限制,如果这不起作用,您将增加最大执行时间。

要增加服务器的内存限制,请将一行代码添加到wp-config.php、.htaccessphp.ini文件中的任何一个。 您需要编辑这些文件中的任何一个,所以让我们从wp-config.php开始,看看它是否能解决问题。 如果没有,您将继续进行 . htaccess文件等。

  • 将以下行添加到wp-config.php文件中:
 定义('WP_MEMORY_LIMIT','128M');
  • 为了 。 htaccess,添加以下行:
 php_value memory_limit 128M
  • 对于php.ini,添加以下内容:
 memory_limit = 128M

上面的代码行将内存限制设置为 128MB,应该适用于大多数站点。 但是,如果需要,您可以将其增加到 256MB 或 512MB。

如果增加内存限制不起作用,则需要增加服务器的最大执行时间。 为此,您必须编辑wp-config.php、 .htaccessphp.ini文件中的任何一个。

正如我们之前所见,您只需要编辑一个文件。 从wp-config.php 文件开始,如果这不起作用,请移至.htaccess,最后移至php.ini文件。

  • 对于wp-config.php,添加以下行:
 设置时间限制(120);
  • 为了 。 htaccess ,添加:
 php_value max_execution_time 120
  • 对于php.ini,添加以下行:
 max_execution_time = 120

如您所见,上述代码行只是将最大执行时间设置为 120 秒。 但是,您可以进一步增加它,看看它是否能解决问题。

有时,托管服务提供商不允许用户增加服务器的内存限制或最大执行时间。 如果这是您的情况,或者您只是觉得自己不方便,请联系您的服务提供商为您增加它。

有关这方面的更多信息,请查看我们的指南,了解如何增加 WordPress 的最大执行时间。

如果上述方法均无效并且您仍然无法修复 WordPress 白屏死机,您需要联系您的主机并寻求帮助。

11. 联系您的托管服务提供商

到目前为止,您已经完成了解决问题的所有可能步骤。 我们希望你们中的大多数人已经成功摆脱了白屏死机。

对于那些仍然面临问题的人,不幸的是,您无能为力。 很可能,您没有问题,问题出在您的托管服务提供商的某个地方,因此我们建议您联系他们并向他们解释您的问题。

如果他们遇到任何问题,他们会通知您,如果问题仅影响您的网站,他们会提供技术支持。

防止 WordPress 白屏死机的提示

到目前为止,您可能已经明白一个小错误可能会破坏您的网站并触发白屏死机。 这就是为什么您在更改您的网站时应该非常小心的原因。

WSoD 很难排除故障,所以要不惜一切代价避免它。 您可以采取以下一些预防措施来避免可怕的白屏死机:

  • 跟踪您和您的团队成员在 WordPress 上的活动,即使只是插件更新。 它将帮助您在故障排除时检查您的步骤,以防发生不好的事情。
  • 定期备份并将它们存储在安全的地方,以便以后访问它们。 在您编辑核心文件或在您的网站上进行任何重大更改之前,这一点尤其重要。 如果您不确定如何创建备份,请查看此分步指南。
  • 在将代码发布到 WordPress 之前,请始终在离线环境中测试您的代码。 小错误会让人头疼,甚至缺少分号“;” 可以让您的网站关闭。
  • 密切关注您的 WordPress 环境中的更新。 WordPress、主题和插件的更新对于确保您的网站安全和正常运行非常重要。 但是,更新的一个小问题可能会破坏您的网站。
  • 选择合适的主机。 这似乎很明显,但它会产生很大的不同,尤其是当您遇到麻烦并需要快速有效的支持时。 您网站的性能在很大程度上取决于托管服务,因此选择提供出色性能和客户支持的主机是关键。 如果您不确定要选择哪个托管服务提供商,请查看这篇文章,我们会在其中回顾一些最佳服务提供商。

结论

总而言之,死机白屏是许多管理员面临的一个恼人但又非常普遍的问题。 它可能因各种原因触发,故障排除可能非常具有挑战性,因为空白屏幕不提供有关错误的任何信息。 这就是为什么您应该不惜一切代价尝试通过定期备份、离线测试重要更改以及密切关注更新来避免这种情况。

但是,如果不幸的是,您遇到了 WSoD,请不要惊慌。 有多种潜在原因,因此您需要耐心等待并尝试找到问题的根本原因。

在本指南中,我们分析了修复 WordPress 白屏死机的潜在原因和解决方案。 首先,尝试清除我们的浏览器缓存和 cookie,并清除 WordPress 缓存。 如果这不起作用,请追溯您的步骤并尝试复制您在白屏出现之前所做的事情。 如果问题仍然存在,请进入恢复模式。 然后,您可以尝试停用我们所有的插件并切换到默认主题以及检查其他集成。

如果这不能解决问题,请启用调试模式以在您的站点上查找 PHP 错误并尝试修复损坏的核心文件,并调整服务器的内存限制或最大执行时间。 最后,如果没有任何效果,您应该联系您的托管服务提供商并寻求帮助。

我们希望这对您有用并帮助您修复 WordPress 白屏死机 (WSoD)。 你遇到过白屏吗? 如果是这样,你做了什么来解决这个问题? 请在下面的评论中告诉我们。

最后,我们建议您还查看以下指南,以找到 WordPress 中其他常见问题的解决方案:

  • WordPress更新失败错误:如何修复它
  • 如何修复您关注的链接已过期问题
  • 学习修复 WordPress 中的 .htaccess 文件