如何解决WordPress网站白屏问题

在日常管理Wordpress网站的过程中,我们偶尔会遇到网站白屏的问题。这导致不论是网站用户,还是网站的管理员,全都无法访问网站。网站白屏可能什么都不显示,也可能会提示无法显示。如果遇到了Wordpress网站白屏的问题,我们应该如何处理呢?

关闭 WordPress 插件

造成网站白屏的最常见的原因,就是由于插件问题而导致的。要修复这种情况下的 WordPress 网站白屏问题的方法最简单,只要禁用所有插件就可以了。

可以访问仪表盘

如果仍然可以访问Wordpress管理仪表盘,可以定位到仪表盘-插件,选择所有插件,然后从批量操作下拉菜单中单击停用即可:

如果是插件导致的白屏,那么关闭了所有的插件后,网站将可以恢复正常访问。这时我们要做的就是排查是哪个插件导致的白屏,排查的方法就是逐个启用插件,启用每个插件后重新加载网站,查看是否可以正常访问。如果启用了某个插件后,网站出现白屏问题,那么我们就可以确认造成Wordpress网站白屏问题的原因了。

无法访问仪表盘

如果不但Wordpress网站出现白屏,就连网站管理仪表盘也无法访问,这时我们应该怎么办呢?

这种情况下,我们需要借助 Xftp 等工具,打开网站根目录,在 /wp-content 文件夹下找到 /plugins 文件夹,并将文件夹的名字更改为 “plugins_old” (可以随意更改)。

然后重新加载网站,发现网站恢复正常。接下来的工作就是逐个的排查插件,直到找到导致Wordpress网站白屏的插件。

我们可以在 /wp-content 文件夹下,重新建立一个 /plugins 文件夹,然后逐个将 /plugins_old 文件夹下的插件移动到文件夹内,每移动一个就重新加载一次网站,如果发现导致白屏问题的插件,再进一步查找导致Wordpress网站白屏的原因。

切换到默认主题

另一个导致Wordpress网站出现白屏的原因,就是Wordpress主题问题。如果是主题原因造成的白屏,也要分两种情况来处理。

可以访问仪表盘

如果能够进入Wordpress网站的管理仪表盘,我们导航到,仪表盘 >> 外观 >> 主题,然后将网站主题切换为默认主题(例如,Twenty Twenty)。切换完成后重新加载网站,如果网站恢复正常,说明是当前使用的主题导致的网站白屏问题。我们需要进一步的分析主题出现了哪些问题。

无法访问仪表盘

如果当前已经无法访问Wordpress网站的管理仪表盘,那么我们需要借助 Xftp 工具,连接到网站服务器,然后打开网站根目录,打开 ./themes 文件夹,然后更改当前主题的名称。

重新加载网站,如果网站已经恢复正常访问,那么说明是主题问题导致网站白屏。这个时候再进一步排查原因。

清除缓存

如果网站出现白屏,但是可以访问Wordpress网站的管理仪表盘,那么也可能是由于缓存问题导致的。

如果WordPress网站上安装了缓存插件,例如 WP Rocket 或 WP Super Cache,这些插件都会提供通过插件的设置页面快速清除缓存的方法。

以WP Super Cache为例,在WordPress仪表盘中,导航至Settings(设置) > WP Super Cache(WP超级缓存) > Delete Delete Cache(删除缓存),即可清除网站的缓存。

清除缓存后,重新加载网站,如果仍然没有解决问题,我们就要想起他办法。

切换到调试模式

如果经过了多种尝试后,依然无法解决Wordpress网站的白屏问题,那么我们可以尝试开启调试模式,Wordpress将会提示网站出现问题的原因。

要启用调试模式,需要打开 WordPress 根目录下的 wp-config.php 文件。找到以下行:

define( 'WP_DEBUG', false );

将“ false”更改为“ true”,然后重新加载网站。如果此行不存在,则可以将其添加到文件顶部。

重新加载网站后,应该会看到Wordpress的错误提示,类似下面所示:

Cannot redeclare get_posts() (previously declared in
/var/www/html/wordpress/wp-includes/post.php:1874) in
/var/www/html/wordpress/wp-content/plugins/my-test-plugin/my-test-plugin.php on line 38

通过错误提示消息,我们发现问题出现在 my-test-plugin 插件的第38行。因此,禁用该插件应该就可以解决白屏问题了。

打开调试模式会将网站的错误提示信息,展示给网站的普通用户。请确保在使用完调试模式后,应将其重新恢复关闭状态。

调整内存限制

内存限制原因,是导致Wordpress网站出现错误或者白屏的另一个可能原因。我们可以通过调整内存限制的方式,来尝试解决网站白屏问题。

调整内存限制有以下几种方式:

1、通过 wp-config.php 添加

通过 WordPress 网站根目录下的 wp-config.php 文件来调整内存限制。打开文件并添加以下代码:

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

2、通过 .htaccess 文件添加

我们也可以使用 .htaccess 文件来增加内存限制。只需添加以下行:

php_value memory_limit 64M

3、通过 php.ini 文件添加

我们也可以通过 php.ini 文件来调整内存限制。

在Linux系统上,要准确确定“php.ini” 文件的位置,我们可以在网站根目录下,创建一个 phpinfo.php 文件,并将如下代码添加到文件中。

<?php
phpinfo();
?>

然后,在浏览器中访问 https://www.youdomain.com/phpinfo.php ,然后查找  “Loaded Configuration File” 项,就可以准确的找到 php.ini 文件的位置。

然后编辑 php.ini 文件,找到“memory_limit” 项,如果文件中没有,可以在文件的尾部增加如下配置代码:

memory_limit = 64M

以上示例中,我们将内存控制设置为 64M,这个要根据我们的项目类型和服务器配置来确定。

调整权限

WordPress网站目录权限问题,也有可能导致网站出现白屏错误。

对于WordPress 网站权限配置,可以遵循以下三个规则:

  • 文件权限应设置为664或644。
  • 文件夹权限应设置为775或755。
  • WP-config.php 文件权限应该被设置为660,600,或644。

通过 SSH 连接服务器,进入 WordPress 网站根目录,执行如下操作命令:

cd /var/www/html
sudo find . -type f -exec chmod 664 {} +
sudo find . -type d -exec chmod 775 {} +
sudo chmod 660 wp-config.php

然后,重新启动Apache 使配置生效。

自动更新失败

有时 WordPress 主题或者插件在自动更新的时候,系统会自动进入维护模式,如果遇到连接失败或者服务器超时等问题,那么Wordpress网站就可能无法访问。

我们可以通过 XFTP 等工具,进入Wordpress 网站根目录,查看是否有一个 “.maintenance” 文件,如果有将其删除即可。

语法错误导致

有的时候,可能不小心编辑了Wordpress的某个文件,或者输入了错误的内容,也可能导致网站出现白屏问题。这种情况查找起来比较困难,可以查看最近编辑的文件,看能否找到出现错误的原因。

我们建议日常应该做好网站的备份,一旦遇到无法解决的问题,我们可以通过恢复备份的方式,来解决网站遇到的问题。我们可以自行备份网站,也可以通过服务器提供上的快照功能来备份。

总结

本文介绍了常见的解决Wordpress网站白屏问题的方法,通过这些方法应该可以解决绝大多数的白屏问题。

原创文章,作者:牛奇网,如若转载,请注明出处:https://www.niuqi360.com/webmaster/fix-wordpress-white-screen-of-death/

发表评论

登录后才能评论