修复致命错误:WordPress中超过最长执行时间的方法
如果你看到致命错误:WordPress中超过最长执行时间,这是一个常见的错误,因为这是由一个PHP脚本没有在分…
如果你看到致命错误:WordPress中超过最长执行时间,这是一个常见的错误,因为这是由一个PHP脚本没有在分配的时间内完成引起。虽然WordPress说这是一个 “致命 “的错误,但这并不意味着它对你的网站是致命的,只是对那个特定的进程是致命的。你的网站前端应该仍然在正常工作,你应该仍然能够执行其他任务。
只是让你出错的那个特定任务将无法完成。虽然这些错误会导致你的网站变得没有反应,所以你不应该忽视它。
在这篇文章中,搬主题将概述该错误的常见原因,并通过几种方法来解决它。在本文结束时,你应该已经解决了这个错误,并能再次愉快地使用你的网站了
一、什么是WordPress的max_execution_time致命错误
虽然WordPress会显示这个错误的友好版本,但这个错误的实际语法是’max_execution_time’,而不是Fatal Error Max Execution Time Exceeded。
我们将两者互换使用。
Fatal Error Max Execution Time Exceeded是由你的网站中的一个脚本没有在PHP的时间限制内完成而引起的。
WordPress对每个PHP脚本的执行和完成都有一个30秒的时间限制。其目的是让一个功能有足够的时间来完成,但不要给它太长的时间,以至于它挂起并冻结整个网站。为此,WordPress设置了一个时间限制,以便PHP能够执行一个脚本并完成它。
如果脚本没有及时完成,PHP就会终止它,这样它就可以继续执行另一个脚本,并保持你的网站正常运行。
二、为什么WordPress会出现max_execution_time致命的错误
大多数虚拟主机强制执行PHP限制以保护服务器资源。由于WordPress是建立在PHP上的,它是黑客和恶意软件的一个常见目标,但也会占用服务器的资源,而这些资源可能是其他功能所需要的。虚拟主机需要保持效率,同时允许每个服务器上的每个网站访问共享资源。PHP时间限制是实现这一目标的方法之一。
大多数虚拟主机将把PHP时间限制在30至60秒之间,以使网站能够使用插件、主题和脚本,但也要保持工作。如果一个脚本、插件或主题的编码很差,或者受到恶意软件的影响,它可能会超过这个时间限制而产生错误。
这不是你所见过的最友好的错误,所以重要的是要明白,虽然它说的是 “致命错误”,但它指的是那个特定的过程,而不是你的网站
三、如何修复WordPress max_execution_time的致命错误
有几件事情你可以做来修复这个错误。我们将在下面概述其中的几项。首先,我们需要知道是什么导致了这个错误,并阻止它。然后,我们可以在之后制定任何补救措施。
1、识别致命错误的原因WordPress中超过最长执行时间
有时,WordPress会告诉你是什么导致了这个问题。在上面的图片中,你可以看到错误发生在插件更新过程中。这给了我们一条线索,说明是什么原因造成的。
该错误的其他实例也会给你一个线索。旁边有文件名的错误信息可以帮助确定原因。其他带有 “了解更多关于WordPress调试的信息 “或类似内容的信息也可能提供一个线索。你也可能从你的WordPress网站上收到一封电子邮件,告诉你发生了什么。这个功能是在WordPress 5.2中引入的,以帮助你识别导致错误的插件、主题或进程。检查所有这些以确定什么出了问题。
如果是一个插件,删除它或寻找一个更新。你也可以检查该插件的网站,使用他们的支持功能,或者在其论坛上寻求帮助,如果它有的话。如果它发生在你身上,它很可能发生在其他人身上。如果错误发生在WordPress插件更新期间,不要一次选择所有的插件。使用复选框选择4-5个插件,更新这些插件,然后重复,直到你所有的插件都被更新。或者使用WordPress中新的自动更新功能。
如果是你的WordPress主题的问题,把它改为默认的Twenty Twenty-One主题,然后重新测试。如果你经常看到这个错误,而且与插件无关,你可以通过几个文件的调整来手动延长PHP的时间限制。如果你愿意,也有一个插件可以做到。
我们建议尝试找出导致错误的脚本并直接解决它,而不是仅仅延长时间限制。延长时间只是一个变通办法,并没有解决根本原因。
2、编辑.htaccess文件
你主机的.htaccess文件控制对WordPress的访问和对一些服务器资源的访问。你可以在.htaccess内添加一个PHP的时间限制指令,为脚本的完成增加更多时间。
- 登录到你的虚拟主机,进入文件管理器
- 导航到你的public_html文件并选择.htaccess
- 右击.htaccess并选择复制
- 将副本命名为.htaccess.bk,以便你总是有一个备用的。
- 右键单击原始的.htaccess文件,选择编辑。
- 在文件中添加以下代码并保存
php_value max_execution_time 300
3、编辑wp-config.php文件
你可以修改网站根目录下的wp-config.php文件来延长PHP的时间限制并防止错误发生。与.htaccess的过程相同,只是这次你修改的是wp-config.php。
- 登录你的虚拟主机,使用cPanel或他们的管理工具来访问文件管理器
- 导航到你的public_html文件并选择wp-config.php
- 右击wp-config.php并选择复制
- 将副本命名为wp-config.php.bk,这样你就会有一个备用的。
- 右键单击原始的wp-config.php文件并选择编辑。
- 在该文件中添加以下代码并保存
set_time_limit(300);
这应该足以阻止错误的发生。
4、编辑php.ini文件
当然你也可以在WordPress内编辑php.ini文件来实现同样的事情。如果你不喜欢编辑非常重要的.htaccess文件,你可以更喜欢编辑php.ini。
这几乎和上面的过程完全一样。
- 登录到你的虚拟主机并访问文件管理器
- 导航到你的public_html文件并选择php.ini
- 右击php.ini并选择复制
- 将副本命名为php.ini.bk,这样你就会有一个备用的。
- 右键点击原始的php.ini文件并选择编辑
- 在该文件中添加以下代码并保存
max_execution_time = 300
因为是在PHP文件中,所以不需要指定是针对PHP的。
5、使用WP最大执行时间超时插件
由于这个错误是由一个插件引起的,我们理解你可能对使用一个插件来解决另一个插件的问题感到犹豫。然而,WP最大执行时间超标插件意味着你不需要修改任何文件来解决PHP时间限制的问题。但是建议你在安装该插件之前对你的网站进行备份,但如果你按照上面的步骤对你的.htaccess文件进行复制,这应该就足够了。
然后:
- 登录WordPress,选择插件>添加新插件
- 搜索Use the WP Maximum Execution Time Exceeded,并选择安装。
- 一旦有了这个选项,就选择激活
这个插件没有任何配置。它只是将代码添加到你的.htaccess文件中,给PHP时间限制增加300秒(5分钟)。
四、如何防止WordPress max_execution_time的致命错误
如果你不幸因错误而经历了网站停机,那么提前预防就特别重要。
有几种方法可以做到这一点:
1、排除插件的问题
如果你认为是一个插件导致了超时,你可以使用排除法来找出导致超时的原因。这只有在问题经常出现的情况下才有效。间歇性的错误更难隔离。
- 禁用所有的插件,并逐步逐一激活它们
- 重现导致错误的情况
- 冲洗并重复一次一个插件,直到你确定是哪个插件导致的问题。
2、解决你的WordPress主题的故障问题
很少是你的WordPress主题包含一个复杂到足以超时的脚本,但这是可能的。如果你已经尝试过排除你的插件的故障,但没有成功,或者你在更新主题时碰到了PHP的时间限制,这可能是罪魁祸首。
最简单的方法是把主题换成默认的并重新测试。
- 导航到外观 > 主题
- 选择Twenty Twenty One并选择激活
- 尝试重现该错误
如果你能用默认主题重新产生错误,那就不是主题的问题了。如果错误消失了,说明主题在调用一个超时的PHP脚本。请与开发商联系,或将你的WordPress主题升级到Astra,因为我们不使用臃肿的脚本。
3、要求你的虚拟主机增加最大执行时间
如果你的WordPress网站已经发展得很好,以至于脚本经常超时,你可能需要升级你的主机计划,或者要求你的主机延长时间。
有许多脚本可以在WordPress内运行,对于较大的网站来说,速度会变慢。如果这成为一个经常性的问题,你将需要与你的主机讨论,以探索你的选择。
五、WordPress中的PHP时间限制
在绝大多数情况下,这是一个设计不良的插件导致超过了PHP时间限制,从而导致WordPress max_execution_time错误。我们在这篇文章中概述的禁用插件和测试它们或增加PHP时间限制的过程的解决办法应该是有效的。当然,如果是其他东西导致超时,你现在有了可以识别和排除故障的工具。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
评论功能已经关闭!