如何修复WordPress死白屏(WSoD)故障
错误类型: WP内部错误 错误名称: 死亡白屏 英文名称: White Screen of Death(WSoD) 错误描述: 正如其名称一样,WordPress死亡白屏(也称为“ WSoD”)是该错误在你要访问网页时发生时,显示一个空白屏幕。
你的WordPress网站是否突然遇到过白屏死机(WSoD),会导致站长和访客无法访问你的网站?
由于缺乏关于错误原因或解决方案的信息,WSoD也被称为隐形杀手。然而,这是最常见的WordPress错误之一。虽然死亡白屏缺乏信息,但根据以往经验,多数情况下是可以解决的。
在这篇文章中,我们将解释什么是WordPress死白屏(WSoD)及其常见原因,我们还将提出九种常见的可行解决方案,以帮助您的网站尽快恢复正常运行。
什么是WordPress死亡白屏?
如何修复WordPress白屏崩溃(9种方法)
什么是WordPress死白屏?
顾名思义,WordPress Death White Screen(也称为“WSoD”)就是当你想访问一个网页的时候出现这个错误的时候,显示一个空白屏。
根据浏览器的不同,您可能会收到不同的错误信息。以下是Google Chrome浏览器中的一个例子,其中包含HTTP 500错误警告“此页面不起作用,无法处理请求”:
谷歌浏览器出现死亡白屏
Mozilla Firefox的“死亡白屏”更是极端,如下图:
Firefox中的死亡白屏
正如你所看到的,它只是一个纯白的屏幕,不包含任何有用的错误或警告信息。
WordPress死白屏一般是PHP代码错误或者内存限制耗尽造成的。
或者,是有问题的主题或者插件导致的。如果网站前台无法访问但WordPress可以访问,可能是主题插件问题。要快速检查你的WordPress网站仪表板是否正常工作,只需导航到yourdomain.com/wp-admin.
那么,应该如何解决WSoD呢?
如何修复WordPress白屏崩溃(9种方法)
当我们遇到WordPress的死白屏,要尽快修复。让我们来看看可以用来解决这个问题的九种可能的解决方案。
禁用WordPress插件
切换到默认的主题
清除浏览器和WordPress插件缓存
打开调试模式。
增加内存限制
检查文件权限
检查自动更新失败问题
解决语法错误或还原备份。
增加PHP文本处理能力
1。禁用WordPress插件。
修复WordPress的死白屏(WSoD)最简单也是最常见的方法之一就是简单粗暴地禁用所有插件。通常,网站会因插件更新错误而关闭。
假设你仍然可以访问WordPress dashboard,进入dashboard-plugins-installed plugins,选择所有插件,然后从批处理操作的下拉菜单中选择Disable:
停用所有WordPress插件
如果这样能解决问题,你需要找到最终的罪魁祸首。为此,您可以逐个启用刚刚禁用的插件,并在每个插件后重新加载网站。如果启用插件后网站崩溃,那么对应的插件就是罪魁祸首。
如果需要继续使用该插件,可以将该插件更新到最新版本,或者联系插件开发人员寻求帮助。
如果不能访问仪表板,可以通过FTP客户端访问站点的文件目录。在网站根目录的wp-content文件夹下,找到plugins文件夹。将其重命名为类似“plugins_old”的名称:
重命名插件文件夹
然后,在前端再次检查你的站点。如果可能的话,您需要像以前一样逐个测试每个插件。将插件文件夹恢复为“插件”,然后分别重命名每个插件文件夹,直到找到有问题的文件夹。
2.切换到默认的主题
如果问题不在插件,有可能是WordPress主题导致死白屏。要查看是否存在此问题,您可以通过切换到默认主题来替换当前主题。
如果你可以访问WordPress仪表盘,进入背景,点击菜单外观>主题。找到并激活默认的WordPress主题,比如Twenty Twenty:
0 2 2 0主题
然后,再次测试你的站点,如果有效,证明问题出在主题上。
如果您无法访问仪表板,请通过FTP访问站点文件夹,然后将wp-content/themes文件夹重命名为另一个名称:
重命名主题文件夹
然后,WordPress将恢复到最新的默认主题。如果没有其他主题,可以从WordPress主题市场下载一个主题,然后上传到主题文件夹。
之后,请再次检查您的网站。如果有效,你的主题可能会有冲突或者更新不正确。在这种情况下,您可能需要联系主题开发人员寻求帮助,或者考虑切换到另一个主题。
3.清除浏览器和WordPress插件缓存
如果你可以访问WordPress网站的后台,但你仍然在前台看到WSoD,这可能是由于缓存问题。
要解决这个问题,请尝试清除Web浏览器和WordPress插件缓存(如果安装的话)的缓存。
如果WordPress网站上安装了缓存插件,比如WP Rocket或者WP Super Cache,那么大部分插件都会在设置页面提供快速清除缓存的方法。
以WP超级缓存为例,进入WordPress仪表盘,设置> WP超级缓存>删除缓存:
WP超级缓存插件设置页面
4.启动调试模式。
如果WordPress死白屏问题仍然没有解决,仪表盘无法正常工作,或者你认为你已经找到了问题,但是想进一步了解,可以启用调试模式。这将显示网站上发生的任何错误。
要启用调试,你需要打开WordPress安装目录的wp-config.php文件。发现了以下行:
define( ‘WP_DEBUG’, false )
将“假”改为“真”,然后重新加载网站。如果这一行不存在,您可以将它添加到文件的顶部。
您将看到一个白屏和一些错误信息,而不是一个完整的白屏。WSoD错误消息应该指出问题源自哪个文件,如下所示:
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行。我们可以通过禁用插件来解决这个问题。
如果您在启用调试模式后看不到任何错误,您可能需要联系您的主机提供商。您的服务器上可能没有正确配置调试。
记住,开启调试模式会将网站的一些信息暴露给未经批准的用户。因此,使用后请务必关闭该模式。
5.增加内存限制
如果尝试上述解决方案后WSoD空页面仍然存在,或者内存限制或内存耗尽可能导致错误,则需要为应用程序分配更多内存。
这可以通过WordPress安装目录的wp-config.php文件来完成。打开文件并添加以下代码:
define(‘WP_MEMORY_LIMIT’, ’64M’);
如果这不起作用,请再次尝试下面的方法。在正常环境下,您可以使用。htaccess文件来增加内存限制。只需添加以下几行:
php_value memory_limit 64M
如果您无法访问。htaccess文件,您可以通过编辑php.ini文件来增加内存限制。
为此,请通过FTP连接到服务器。在网站的根目录中,查找php.ini文件。并在文件中的任意位置添加以下行:
memory_limit = 64M
如果仍然没有足够的内存来分配,应用程序可能有问题。可能是主题或者某个插件占用了太多的内容资源。
此时,你可能需要找一个技术人员通过站点的SQL日志和其他资源统计来检查原因,或者向主机提供商寻求帮助。参考如何解决WordPress内存限制错误(2种方法)
6.检查文件权限。
WSoD的另一个潜在原因是文件权限。但是,除非你真的知道自己在做什么,否则不建议手动更改WordPress目录或文件的权限,因为这可能会在不经意间产生攻击者可以利用的漏洞。
谈到WordPress权限,有三个简单的规则要遵循:
该文件应设置为664或644。
该文件夹应设置为775或755。
Wp-config.php文件应设置为660、600或644。
如果您可以通过SSH访问服务器,您可以输入WordPress根目录,并使用以下命令应用适当的规则:
sudo find . -type f -exec chmod 664 {} + sudo find . -type d -exec chmod 775 {} + sudo chmod 660 wp-config.ph
如果您不确定如何执行此操作或担心出错,请向虚拟主机提供商寻求帮助。
7.检查自动更新是否失败。
有时候WordPress会遇到更新问题,比如服务器超时。通常这个问题会自动解决。然而,在极少数情况下,它可能会导致WordPress的死亡。
在这种情况下,你要做的第一件事就是进入WordPress根目录,看看是否有一个. maintenance文件(这个文件的名字也可以缩写)。
你所需要做的就是尝试删除文件,然后再次加载你的网站。
如果更新成功,但是WordPress不能自动删除这个文件,那么一切应该会恢复正常。
如果更新没有完成,它可能会自动重新启动,在这种情况下,情况应该会恢复正常。
如果都失败了,请尝试手动更新WordPres,或者可以解决问题。
关于WordPress维护模式的修复,建议查看文章《WordPress维护模式——故障排除和自定义页面教程》进一步了解。
8.解决语法错误或恢复备份。
WSoD在WordPress出现死白屏的另一个常见原因是你在编辑WordPress网站代码时,不小心输入了错误的内容或者使用了错误的语法。
一个字符放在错误的位置可能会破坏整个网站,这就是为什么我们永远不应该在生产环境中编辑网站代码。
但是不用担心。可以通过FTP连接到站点,恢复站点的备份。作为一个WP站长,要保持良好的网站数据备份习惯:要熟悉14个最好的WordPress数据库插件【WP数据库备份、优化和迁移】。
在pagoda面板上,在网站上执行数据备份或恢复非常简单:
如果你是Pagoda用户,可以通过Pagoda控制面板规划任务,创建备份数据库或备份网站,支持定期和定时备份,非常方便。
宝塔控制面板备份计划
如果是恢复数据库备份,只需要进入宝塔控制面板,进入数据库菜单,找到需要恢复的数据库,点击“备份”,选择要恢复的备份版本,点击“恢复”。
WordPress数据库恢复
如果是恢复网站备份,可以通过访问Pagoda控制面板-文件,进入/www/backup/site目录,找到网站备份压缩包,将压缩包解压到对应的网站目录。
WordPress网站数据恢复
如果您之前在WordPress中启用了调试模式,也可能会出现一条错误消息,指出一个语法错误。如果是这种情况,它应该会准确地告诉您哪个文件的哪一行代码有问题。
9.加强PHP文本处理能力
以上都做了,还是不行。如果WSoD还没有解决,可以尝试另一种技术。极少数情况下,死白屏是由于页面或文章内容过长造成的。
在这种情况下,可以尝试通过增加回溯和递归限制来调整网站上的PHP文本处理功能。为此,请将以下代码粘贴到wp-config.php文件中:
/* Trick for long posts / ini_set(‘pcre.recursion_limit’,20000000); ini_set(‘pcre.backtrack_limit’,10000000);
添加此代码后,保存更改。然后刷新站点,看看它是否在运行。
总结
WordPress的死白屏看似是站长束手无策的故障,但只要站长知道故障的原因和解决方法,就不用太担心。
在大多数情况下,一个简单的插件和/或主题检查就可以解决WSoD问题。更加熟悉WordPress调试模式,在很多情况下可以帮助解决大部分WP问题。
声明:
1,本站分享的资源来源于用户上传或网络分享,如有侵权请联系站长。
2,本站软件分享目的仅供大家学习和交流,请不要用于商业用途,下载后请于24小时后删除。
3,如果你也有好的建站资源,可以投稿到本站。
4,本站提供的所有资源不包含技术服务请大家谅解!
5,如有链接无法下载,请联系站长!
6,特别声明:仅供参考学习,不提供技术支持,建议购买正版!如果发布资源侵犯了您的利益请留言告知!
创网站长资源网 » 如何修复WordPress死白屏(WSoD)故障