解决 WordPress 中的白屏死机:综合指南

已发表: 2024-05-16

对于网站所有者来说,经历“WordPress 白屏死机”可能是一个令人畏惧的问题。 此问题通常被称为“白屏死机”(WSOD),它会使您的网站无法访问且一片空白,从而导致那些不熟悉故障排除的人感到恐慌。

在这份综合指南中,我们将引导您完成诊断和修复 WordPress 中的白屏的步骤,确保您的网站快速恢复在线。


了解死机白屏

当网站上的脚本耗尽内存限制时,通常会出现 WordPress 中的白屏。 但是,其他问题也可能引发此问题,例如:

  • 插件或主题冲突
  • 内存限制耗尽
  • 服务器问题
  • 核心文件损坏

了解这些潜在原因将帮助您更好地诊断和解决问题。


诊断 WordPress 中的白屏

在深入修复之前,诊断白屏的根本原因至关重要。 以下是一些需要遵循的初始步骤:

  1. 检查所有页面:确定白屏是否影响所有页面或仅影响网站的特定部分,例如管理区域或特定帖子。
  2. 禁用插件和主题:停用所有插件并切换到默认主题(例如二十一二十一)可以帮助确定是否是特定插件或主题导致问题。
  3. 启用调试模式:WordPress 具有内置调试功能,可提供错误消息以帮助识别问题。 将以下行添加到您的wp-config.php文件中:

    define('WP_DEBUG', true);
    define('WP_DEBUG_LOG', true);
    define('WP_DEBUG_DISPLAY', false);

    这会将错误记录到wp-content目录中的debug.log文件中。

修复 WordPress 中的白屏

确定潜在原因后,您就可以开始对特定问题进行故障排除。 以下是解决 WordPress 白屏问题的一些详细步骤:

1. 增加内存限制

内存耗尽是白屏的常见原因。 要增加 PHP 内存限制,请将以下行添加到wp-config.php文件中:

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

如果这不起作用,您可能需要增加服务器的 php.ini 文件或 .htaccess 文件的内存限制:

  • php.inimemory_limit = 128M
  • .htaccessphp_value memory_limit 128M

2. 停用所有插件

插件通常是白屏背后的罪魁祸首。 要快速停用所有插件,请通过 FTP 或托管文件管理器重命名wp-content文件夹中的plugins目录:

  1. 导航到wp-content
  2. plugins文件夹重命名为plugins_old

如果这解决了问题,请将文件夹重命名回plugins ,然后一一重新激活每个插件以找出有问题的插件。

3. 恢复默认主题

错误的主题也可能导致白屏。 要切换到默认主题,请在wp-content/themes中重命名活动主题的目录:

  1. 导航到wp-content/themes
  2. 重命名您的活动主题的文件夹(例如mytheme_old )。

如果已安装,WordPress 将自动恢复为默认主题。 如果这解决了问题,请检查您的主题是否有错误或考虑使用其他主题。

4. 启用调试和错误日志

如前所述,在wp-config.php文件中启用调试可以深入了解导致白屏的原因。 查看位于wp-content目录中的debug.log文件以获取错误消息并解决指示的问题。

5. 恢复备份

如果您有最近的备份,将站点恢复到以前的状态可以快速解决白屏问题。 确保定期备份站点,以防止数据丢失并促进恢复。

6. 检查损坏的核心文件

WordPress 核心文件损坏也可能导致白屏。 要解决此问题,请从wordpress.org下载 WordPress 的全新副本并替换您的核心文件:

  1. 下载并解压 WordPress。
  2. 通过 FTP 将wp-adminwp-includes文件夹上传到您的站点,替换现有文件夹。

这不会影响您的主题、插件或上传,但会替换任何损坏的核心文件。

7. 修复语法错误

如果您最近向主题或插件添加了自定义代码,语法错误可能会导致白屏。 通过 FTP 访问您的文件并检查最近的任何更改是否有错误。 使用 PHP 验证器检查代码是否存在语法问题。


防止 WordPress 出现白屏

防止 WordPress 出现白屏需要采取主动措施来确保您的网站顺利运行:

  1. 定期更新:保持 WordPress、主题和插件更新到最新版本。
  2. 优质插件和主题:使用信誉良好且编码良好的插件和主题。
  3. 日常备份:定期备份您的网站,以确保在出现问题时可以快速恢复。
  4. 临时环境:在将更新和新插件应用到您的实时站点之前,在临时环境中测试更新和新插件。

高级故障排除

如果基本故障排除步骤无法解决白屏问题,请考虑以下高级技术:

1. 增加 PHP 时间限制

长时间运行的脚本有时会导致白屏。 通过将此行添加到您的wp-config.php文件来增加最大执行时间:

 set_time_limit(300);

或者,您可以在 php.ini 文件中调整此设置:

 max_execution_time = 300

2. 解决数据库问题

损坏的数据库可能会导致白屏。 通过 phpMyAdmin 访问您的数据库并检查错误。 如果发现任何问题,请使用“修复”功能。

3. 文件权限

文件权限不正确也会导致白屏。 确保您的 WordPress 文件和目录具有正确的权限:

  • 文件:644
  • 目录:755

常见错误及解决方案

以下是与 WordPress 白屏相关的一些常见错误及其解决方案:

1.内存耗尽错误

如果您看到类似Allowed memory size of x bytes exhausted类的错误,则按前面所述增加内存限制即可解决该问题。

2. 500内部服务器错误

白屏通常伴随着 500 内部服务器错误。 检查服务器的错误日志以了解详细信息,并按照上述故障排除步骤进行操作。

3.语法错误

可以通过查看最近的更改并使用 PHP 验证器来识别和解决自定义代码中的语法错误。


结论

WordPress 中的白屏可能是一个令人沮丧的问题,但通过系统故障排除,可以解决该问题并恢复您的网站。

通过了解常见原因并应用本指南中提供的解决方案,您可以有效修复白屏并防止其再次出现。

定期维护、更新和备份对于保持 WordPress 网站健康并避免可怕的白屏死机至关重要。