WordPress网站为什么会出现白屏?如何修复?

注意:在对网站进行任何更改之前,请确保备份了WordPress网站。

WordPress网站为什么会出现白屏?

大多数情况下,当看到白屏时,表示网站上的脚本耗尽了内存限制。

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

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

由于白屏错误可能由任何因素引起,因此需要进行一一排查排除才能修复。

同主机的其他网站是否正常?

如果在同一主机帐户上安装了其他WordPress网站,首先要检查问题是否也在其他网站上发生。

如果是,那么表明WordPress服务器出了问题。这可能是影响其服务的临时问题。另一方面,如果问题仅发生在一个网站或该网站的特定部分,那么就知道问题出在该特定网站上。

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

如果白屏是由WordPress插件或主题引起的,那么WordPress就能够捕获它。

WordPress 5.2中引入的新致命错误保护功能可以捕获错误,有事甚至看不到白屏,但是会看到该网站存在技术问题的消息。

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

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

但是,如果没有收到电子邮件或恢复模式选项的纯白色屏幕错误,则需要手动修复错误。

增加内存限制

通常,发生此错误是因为脚本已耗尽内存并在中间退出。要解决此问题,需要增加WordPress可用的PHP内存。

通过FTP工具找到并编辑文件,将以下代码粘贴到“That’s all, stop editing! Happy blogging.”前:

  1. define( 'WP_MEMORY_LIMIT', '256M' );

此代码告诉WordPress将PHP内存限制增加到256MB。完成后,您保存更改并将文件上传回服务器。

禁用所有插件

如果增加内存限制没有解决问题,或者如果你有256M或512M的高内存限制,那么你需要开始故障排除。

根据我们解决此问题的经验,我们始终发现问题是使用特定插件或主题。让我们继续并禁用所有插件。

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

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

首先,使用FTP客户端连接到WordPress站点。连接后,转到wp-content文件夹,找到“plugins”文件夹。

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

WordPress会查找名为plugins的文件夹来加载所有插件。当它找不到该文件夹​​时,它只是停用所有插件。

如果这样可以解决问题,那么一次启用一个插件就可以解决问题的根源。一旦找到导致问题的插件,可以将其替换为替代方案或将问题报告给插件作者。

用默认主题替换主题

如果插件停用所有插件无法解决问题,可以尝试使用默认主题替换当前主题。

首先,使用FTP客户端连接到网站,然后转到/ wp-content / themes /文件夹。右键单击以选择当前的WordPress主题,并将其作为备份下载到计算机。

接下来,您需要从您的网站删除当前主题。右键单击主题文件夹,然后选择“删除”。

如果网站上安装了默认的WordPress主题,如(Twenty Eighteen或Twenty Nineteen),那么WordPress将自动使用它作为默认主题。

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

如果这样可以解决问题,应该查看主题的文件。如果文件底部有额外的空格,需要删除它们,有时可以解决问题。

如果在主题的文件中使用编码不良的函数,那么它也会导致白屏错误。考虑从源代码下载主题的新副本,然后安装。

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

如果以上方法都没有解决问题,那么下一步是打开WordPress中的调试。这将查看输出的错误类型。

只需将以下代码添加到文件中即可:

  1. define( 'WP_DEBUG', true);
  2. define( 'WP_DEBUG_LOG', true );

添加后,空白屏幕将显示错误、警告和通知。这些信息可以找到错误原因。

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

清除WordPress缓存

有时可能有权访问后端,但网站的前端有白屏。这可能是因为缓存插件而发生的。只需清空缓存。

4款最优秀的WordPress缓存插件

修复长文章

如果只是在一个很长的文章或页面上出现白屏,那么这个小技巧可能会奏效。

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

  1. ini_set('',20000000);
  2. ini_set('',10000000);
THE END