如何修复 WordPress 白屏死机

已发表: 2019-08-31

没有什么比加载您的网站并看到一个空白的白屏更糟糕的了。 没有错误信息,没有明确的问题,只是白屏死机。

这是最常见的 WordPress 错误之一。 最糟糕的部分? 这个问题不仅会使访问者无法访问您的 WordPress 网站,管理员也无法访问。


什么是死亡白屏?

当网站的 PHP 或数据库中发生错误时,会出现白屏死机 (WSoD)。 WSoD 也可能显示为一条消息,“此页面无法正常工作,无法处理请求”或“站点遇到技术问题”。 这称为 HTTP 500 错误。


幸运的是,死亡的白屏可以修复! 解决 WordPress 站点上的 HTTP 500 错误的第一步是确定您是否有权访问 wp-admin。 尝试转到您的登录页面并登录。如果网站的前端已关闭,但管理员正在工作,则很有可能是由于主题或插件有问题。

如果您网站上的脚本耗尽了内存限制,它也可能导致 HTTP 500 错误。 由于死机的白屏有不同的原因,因此有多种修复方法。

本文将教你如何修复死机白屏:

  • 使用 WordPress 调试工具
  • 禁用主题和插件
  • 使用您网站的备份
  • 增加网站的内存
  • 解决语法错误
  • 识别文件权限问题
  • 完成 WordPress 更新


使用 WordPress 调试工具

WordPress 带有特定的调试系统,旨在简化流程以及跨核心、插件和主题标准化代码。 将调试视为路线图,以查看错误来自何处以及根本原因是什么。

要了解如何通过WP_DEBUG, WP_DEBUG_LOG, WP_DEBUG_DISPLAY, SCRIPT_DEBUG,SAVEQUERIES进行调试,请单击此处。

虽然调试工具不一定能解决您的问题,但它们可以帮助您指明正确的方向。 这就是为什么在对白屏死机进行故障排除时采取良好的第一步,这样您就不会花费任何额外的时间来尝试解决错误的问题。

如果您不确定在启用 WP_DEBUG 后看到的任何错误,请联系我们并附上您正在处理的错误消息和站点。 我们很乐意提供帮助!


如何通过禁用 WordPress 主题和插件来修复白屏死机

很多时候,WordPress 站点出现故障是因为存在插件冲突或服务器上运行的 PHP 版本不支持插件。 想想过去 24 小时:网站上是否安装了任何新主题或插件? 禁用最近下载的插件或切换主题是最好的开始。

如果您有权访问 wp-admin…

登录并禁用您认为可能导致问题的插件或主题。 停用后,请在您的网站上进行硬刷新。 如果它加载,你已经找到了罪魁祸首! 如果您仍然看到白屏死机,您有两个选择:您可以禁用不同的主题或插件,或者您的 HTTP 500 错误背后可能有不同的原因。

如果您无权访问 wp-admin…

仍然可以通过 SFTP 禁用您的主题和插件。 连接到您的网站,然后导航到 wp-content 文件夹。 在这里您可以找到您网站的所有主题和插件文件。 通过重命名文件,您可以停用站点上的主题或插件。 进行更改后,请在您的网站上进行硬刷新。 如果它加载,则意味着您找到了正确的插件! (现在应该能够再次登录 wp-admin)。 如果您仍然看到白屏死机,您的手上可能会遇到不同的问题。

专业提示:有时问题不是单个插件或主题,而是它们如何相互交互。 要排除这种情况,您可能需要禁用所有主题和插件,然后一次重新安装一个。 我们的解决插件冲突的分步指南可以帮助解决这个问题。

除了冲突之外,过时的 WordPress 插件有时会导致 HTTP 500 错误。 如果您一直在推迟更新,我建议您运行这些更新以确保您的插件和主题处于最佳状态!


如何通过使用站点的备份来修复死机白屏

如果您很快发现 WSoD,摆脱它的最简单方法之一就是在错误发生之前将您的站点回滚到最近的备份。 此过程可以帮助您查明错误何时开始,因此更容易确定发生了什么变化并可能导致 HTTP 500 错误。

即使您不亲自备份您的网站,大多数托管 WordPress 托管服务提供商也会自动运行您网站的备份并提供恢复过程。 如果您的站点托管在 Flywheel 上,我们每晚都会对您的站点进行备份并存储最后 30 个站点。您可以从 Flywheel 仪表板自行快速轻松地恢复备份。 如果您的网站由其他提供商托管,请尝试与他们联系以请求恢复。

一旦您回滚了您的网站,请不要忘记首先尝试找出导致错误的原因。 它是网站上的新插件吗? 没有正确完成的更新? 虽然通过备份摆脱白屏死机很好(因为这意味着您的网站已备份!),但请记住采取下一步确定原因是什么,这样您就不会重复相同的情况。


如何通过增加站点的内存来修复死机白屏

有时会导致 HTTP 500 错误,因为您的站点已用尽其分配的内存。 如果您收到“允许的 xxxxxx 字节的内存大小已用尽”的错误消息,则表明您需要进入并增加内存。

注意:大多数托管 WordPress 主机会为您处理此问题,因为它是服务器级设置。 如果您的站点托管在 Flywheel 上,只需向我们的支持团队发送一条消息,告知您需要增加站点的内存,我们会对其进行修补。

对此的手动解决方案是为应用程序分配更多的 PHP 内存。 这可以通过许多安装的 wp-config.php 文件来完成; 只需将以下代码添加到文件中:

将 PHP 内存增加到 64MB:

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

要将 PHP 内存增加到 96MB:

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

注意:出于安全原因,Flywheel 会锁定您的 wp-config.php 文件,并且不允许直接对其进行更改。 我们这样做是因为它是由我们的软件自动生成的,而且您想做的大部分事情都会自动为您配置好。

在使用此功能之前,WordPress 会自动检查 PHP 分配的内存是否少于输入的值。 例如,如果 PHP 已分配 64MB,则无需将此值设置为 64M,因为 WordPress 会在需要时自动使用所有 64MB。


如何通过解决语法错误来修复死机白屏

语法错误通常是由代码语法错误引起的。 您可能不小心输入了错误的语法或粘贴了错误的语法,这导致了 WSoD。

解决语法错误的最简单方法是将您的站点回滚到白屏死机之前的版本。 这会将您的站点推回并将其恢复到发生错误之前的最后一次备份,而不必跳入并编辑代码。

解决语法错误的另一种方法是编辑语法错误中提到的文件。 通常,语法错误将引用文件以及发现错误的代码行。

要编辑受影响的文件,您可以采用两种不同的方法:

  1. 根据您的服务器设置,通过 FTP 或 SFTP 下载受影响的文件
  2. 使用您的网络主机提供的工具直接在服务器上编辑文件

FTP 客户端是一个应用程序,可帮助您连接到您的网站并使用 FTP 协议传输文件。 一些免费的解决方案包括 Filezilla 和 Cyber​​duck。 下载受影响的文件后,请尝试根据文本编辑器(例如 Sublime)中的行代码确定错误来源。 一旦您认为您已经纠正了语法错误,请通过 FTP 将文件上传回您的服务器。 硬刷新您的网站以查看您的网站是否恢复正常状态。

如果您的网络主机提供了一种工具,可以通过在线文件管理工具直接在服务器上编辑文件,则可以使用第二个选项。 如果他们提供这种性质的工具,您可以登录,找到文件,进行必要的更改,然后保存。

专业提示:您可以通过在本地环境而不是您的实时站点中进行站点更新来避免由语法错误导致的白屏死机。 Local 是专门针对 WordPress 网站的免费解决方案,可以轻松提取网站副本以进行离线编辑并将更改实时推送到生产环境。


如何通过识别文件权限问题来修复死机白屏

文件和文件夹权限不正确可能会导致您的 WordPress 网站在上传过程中出现错误,从而导致白屏死机。

为什么? 因为文件和文件夹权限告诉服务器谁可以读取、运行或修改您帐户上托管的文件。 通常,WordPress 会警告您它无法编辑文件、创建文件夹或写入磁盘。 但是,有时您可能看不到错误消息。

要检查您的站点具有哪些文件和文件夹权限,请通过 FTP 连接到您的站点。 连接后,转到 WordPress 站点的根文件夹。

从那里,选择根目录中的所有文件夹,然后右键单击以选择“文件权限”。 一个新的盒子应该弹出一个数值。 推荐值为“755”,因此如果您看到不同的内容,请继续更改它。 单击“递归到子目录”复选框,然后选择“仅应用于目录”选项。 点击“确定”。 您的 FTP 客户端将开始设置文件夹和子文件夹的文件权限,因此请等待几分钟完成。

接下来,选择 WordPress 站点根文件夹中的所有文件和文件夹,然后右键单击以选择“文件权限”。 这一次,文件权限框中的数值应该是“644”。 如果不同,请输入新值,单击“Recurse into subdirectories”复选框,然后选择“Apply to files only”选项。 单击“确定”继续。

现在,您的 FTP 客户端将开始为您的 WordPress 站点上的所有文件设置文件权限。 给这几分钟完成,然后硬刷新。


如何通过完成 WordPress 更新来修复白屏死机

有时 WordPress 会遇到更新问题。 大多数情况下,它会自行解决,但偶尔会导致白屏死机。

有两种方法可以完成 WordPress 更新:

  1. 删除 .maintenance 文件
  2. 手动更新

第一步是进入您的 WordPress 根目录,查看是否有 .maintenance 文件。 名称以点开头,表示它是一个隐藏文件。 如果您使用 FTP 程序没有看到它,请尝试登录服务器的控制面板并使用文件管理器查找并删除它。 删除该文件后,再次加载您的网站。 如果更新成功,而 WordPress 只是未能自动删除该文件,您的网站将正常加载。

如果您仍然看到问题,则可能是更新不成功。 在这种情况下,您可能需要手动运行更新。 本指南可以帮助您做到这一点。


概括

白屏死机可能是由许多问题引起的。 虽然让您的网站尽快恢复并运行很重要,但请记住,了解问题及其发生的原因可以防止将来出现 HTTP 500 错误。 通过这些步骤,您将能够让您的网站在短时间内恢复正常运行!


使用本地进行离线编辑

尝试在实时站点上进行编辑是可怕的,我们通常不推荐这样做。 它可能导致站点损坏或更糟糕的是,白屏死机。 这就是我们拥有 Local 的原因,我们的本地开发工具深受全世界开发人员的喜爱!

除了轻松下拉实时站点以进行离线编辑之外,您还可以通过几次快速单击来实时推送本地站点,同步您的工具以简化流程等等! 免费下载本地并避免那些 WSoD! 自己试试吧!