什么是WordPress网站max_execution_time错误?
WordPress网站产生的max_execution_time致命错误在您的WordPress管理仪表盘中如下所示:
仪表盘中的最大执行时间错误
整个错误消息如下:
"Fatal Error: Maximum execution time of 30 seconds exceeded"
30秒的值可以是任何数字。通常,它在30到60秒之间。安装或更新主题、插件或WordPress核心时,很容易弹出此错误。
为什么会发生max_execution_time错误?
每个WordPress站点都有处理服务器请求的最大执行时间限制。它旨在最大程度地减少服务器滥用。此限制会查看您网站上运行的所有PHP脚本,并阻止那些运行超过时间限制的PHP脚本。
由于WordPress站点文件主要使用PHP,因此必须密切关注PHP脚本,以查看它们是否运行时间过长并占用过多服务器资源。恶意攻击利用永无止境的PHP脚本来使网站爬行的情况并不少见。
此外,如果运行时间过长,某些插件、主题或其他WordPress元素可能会占用服务器资源。插件似乎比其他元素更频繁地触发此错误消息——可能是因为WordPress用户安装插件的频率高于他们修改代码或安装主题的频率。此外,插件来自各种开发人员,因此很难检查出由可靠代码和频繁更新支持的好插件。
不管是什么原因,让PHP脚本运行很长时间的原因并不多。因此,设置了最长执行时间限制。您的托管公司通常在服务器级别设置此限制。
标准最大执行时间限制是多少?
大多数托管公司强制执行的最大执行时间在30到60秒之间。这个范围使您的PHP脚本有足够的时间来完成它们的工作,即使它们需要一些时间来执行。
一般来说,30秒的时间限制应该适用于高质量的PHP脚本。但是,您可能需要将限制增加到60秒,具体取决于您的代码和服务器响应。一些开发人员可能会选择最多300秒,但任何超过此时间的决定都不是明智的决定。
你可能想知道:有没有可能有一个网站,其中PHP脚本需要更长的时间,但它们不会对服务器造成任何损害?
是的——一些资源密集型网站不得不达到更长的执行时间。但是,最好先假设可能是插件、主题或其他集成导致了问题,然后再得出不同的、不太有趣的结论。您的站点也可能需要更强大的服务器,尤其是在您当前使用共享主机设置的情况下。
有时托管公司可能会为您的网站设置过低的最长执行时间。这是一种非常常见的情况,您可以通过联系您的托管服务提供商来解决它。
“致命错误”:听起来很糟糕
“致命错误”文本听起来很紧急,但您的网站不会面临永远无法再次运行的风险。max_execution_time这样的WordPress错误是WordPress中最常见的警告之一。
但是,您可能会在网站的前端找到一条消息,告诉用户该网站遇到了技术问题。
这是一个问题 – 如果警告消息阻止您的内容并在任何时间段内保持活动状态,您可能会失去销售、潜在客户或读者。
如何确定是否发生WordPress max_execution_time错误
查看您是否已超过最大执行时间的主要方法是在上传插件、主题或WordPress更新时检查仪表板中的消息。
安装或更新页面呈现有关更改的信息,并为您提供“成功”或“失败”消息。“致命错误”消息也是一个选项。
仪表盘内的致命错误消息
识别最大执行错误的另一种方法是查看向用户发送的前端消息,其中显示“该站点遇到技术困难”。
关于技术问题的前端消息
此消息还有其他变体,其中一些讨论严重错误并包含一个了解调试的链接。
较新WordPress版本上的替代前端消息
最后,WordPress通常会向网站管理员发送一封电子邮件,说明插件或主题导致了致命错误。该电子邮件还将提供一个链接来帮助您找到问题的解决方案,通常是通过删除有问题的插件或主题或增加您的最长执行时间限制。
一封来自WordPress关于如何修复最大执行错误的电子邮件
对于所有导致“技术困难”消息的错误,请务必阅读我们的解决这些问题的指南。但是,要特别关注修复最大执行时间错误,请继续阅读。
如何修复WordPress错误max_execution_time
如前所述,WordPress错误max_execution_time出现在插件、主题或WordPress更新需要太长时间才能运行PHP脚本之后。
您会在多个区域看到错误通知。如果您无法访问您的网站,您收到的致命错误电子邮件包含一个链接,用于在恢复模式下启动您的WordPress实例。
恢复模式允许您访问仪表板并删除插件等问题
有几种方法可以修复WordPress错误max_execution_time:
- 首先识别并卸载导致错误的插件、主题或其他资源。它是在恢复模式下完成的,或者通过FTP删除插件。
- 通过插件增加WordPress仪表盘中的最大执行时间。
- 在wp-config.php中修改最大执行时间。
- 增加.htaccess文件中的最大执行时间。
- 更改php.ini文件中的最大执行时间。
- 要求您的托管服务提供商增加最大执行时间。
卸载插件或主题通常是最快的方法,但我们将介绍以下所有选项。
卸载问题项目
此解决方案消除了最大执行错误,但不会增加最大执行时间。因此,如果您决定愿意为有问题的插件或主题寻找替代品,这只是一个合适的选择。
如果您改为增加最大执行时间以为插件或主题留出空间,请转到以下部分。
那些有兴趣删除问题项目(例如,主题或插件)的人,请按照以下说明进行操作。
首先,请通过以下方法尽力确定问题出在哪里:
- 卸载最近安装的项目,尤其是在安装插件或主题或更新到最新版本的WordPress后立即发生错误时。
- 检查您的电子邮件收件箱以查看WordPress是否向您发送了有关致命错误的电子邮件。有时它们会首先包含有关哪个插件导致问题的信息。
- 如果您不知道是哪个项目导致了错误,我们建议您停用每个插件,然后一个一个地重新激活它们,每次刷新以捕获哪个项目导致了错误。
确定问题项目后,应从WordPress站点将其卸载。
要完成此过程,请阅读我们关于卸载WordPress插件的文章。该指南重点介绍了如何使用仪表板、FTP客户端等删除插件。
通过仪表板卸载最适合快速删除,但如果您无法访问WordPress仪表盘,则通过FTP卸载插件或主题会派上用场。您还可以选择使用恢复模式进入仪表盘。WordPress在您收到的电子邮件中包含一个指向恢复模式的链接。
最后,您可能会发现最近的WordPress版本升级导致了该错误。使用我们关于如何回滚WordPress版本的指南来解决此问题。一般来说,WordPress版本不应该是根本原因——它通常是一个插件或主题与新的WordPress版本不兼容。
如何增加WordPress的最大执行时间(使用插件)
另一种选择是增加最大执行时间,让插件和主题中的PHP脚本有更多时间工作。
同样,最大执行时间是为了您的站点和服务器的安全,所以最好不要增加它以适应编码不佳的插件或主题。但是,您可能会发现您的托管公司设置了较短的执行时间,或者您可能需要一些额外的时间。
在这些情况下,增加最大执行时间以消除WordPress网站max_execution_time错误并最大限度地减少将来再次出现错误的机会是可以接受的。
更改最大执行时间的一种方法是通过仪表板安装一个插件,该插件可以更改配置文件,而无需进入WordPress文件。对于那些不习惯使用FTP客户端的人,我们喜欢此选项,但前提是您可以访问该站点的仪表板。
一些安全和优化插件,例如Google PageSpeed Insights,可以选择增加最大执行时间。
另一个专注于最大执行时间的插件称为WP Maximum Execution Time Exceeded。我们建议尝试这个,因为它会自动重写.htaccess文件以增加最大限制。
WP Maximum Execution Time Exceeded插件
你无事可做;安装并激活插件以使其工作。
您只需要安装和激活插件——仅此而已
默认情况下,该插件会提供300秒的延迟,而不是您最初拥有的任何延迟,这应该为您的网站的主题和插件提供足够的时间来运行它们的PHP脚本。
最后,如果您想删除增加的时间限制,请卸载插件。
如何在wp-config.php中增加最大执行时间
以下每种方法都会利用您的核心WordPress文件。我们建议通过FTP/SFTP访问您的WordPress站点文件并修改其中的内容。
至于处理WordPress网站的max_execution_time错误,解决问题的一种方法是打开wp-config.php文件。
打开与WordPress文件的FTP连接。找到并打开根文件夹(通常以您的站点命名)并单击该/public
文件夹。
/public
文件夹包含大量核心文件,包括wp-config.php。
单击wp-config.php可以直接在FTP客户端中进行编辑,也可以将其保存到您的计算机中进行编辑。
找到wp-config文件
将以下代码放入wp-congfig.php文件中:
set_time_limit(300);
只要不修改文件中已有的任何内容,代码的放置位置通常都无关紧要。我们建议在“停止编辑”之前找到最后一个区域并将代码放在那里。
在wp-config中设置新的最大执行时间
之后,保存并通过FTP将新的wp-config.php文件上传到您的站点。此示例的新最大执行时间为300秒,但您可以根据需要修改该数字。
为确保它正常工作,请返回WordPress以查看现在是否一切正常。如果您尝试上传插件或主题时没有出现错误,则说明您已成功。
如何增加 .htaccess 中的最大执行时间
许多其他主机(主要是共享主机提供商)仍然使用Apache服务器,因此在您的根WordPress文件夹中提供了一个.htaccess文件。
您可以像查找wp-config.php文件一样找到该文件:通过FTP连接到您的站点并在/public文件夹下查看。
查找并单击 .htaccess
在编辑之前备份您的.htaccess文件非常重要。阅读本教程,了解如何备份WordPress文件。
备份后,打开.htaccess文件进行编辑。
将此行添加到文件中:
php_value max_execution_time 300
随意将数字更改为您想要的任何最大执行时间。请保存文件并将其上传回FTP客户端中的文件夹/public
。最后,返回您的网站检查问题是否已解决。
如何在php.ini中增加最大执行时间
另一个在Web主机中不常见的文件称为php.ini。这是增加执行最大值的另一种选择,但通常情况下,使用wp-config.php方法会更轻松。
但是,如果您确定根文件夹中存在php.ini文件并且其他方法由于某种原因不起作用,请考虑改用php.ini文件。
与其他方法非常相似,您通常可以在/public
文件夹中找到php.ini文件。通过FTP客户端访问它。
打开该文件进行编辑。
找到php.ini文件
添加此行以增加最大执行时间:
max_execution_time = 300
与往常一样,更改数字以满足您自己的需求,并记住通过重新上传问题项目并检查所有错误消息是否已消失来测试它是否有效。
联系您的托管服务提供商以请求增加最大执行时间
在专用服务器上运行WordPress站点意味着您可以完全控制最长执行时间。因此,以前的方法应该有效。您还可能会发现您可以手动更改其他类型的托管(如托管或VPS托管)的最大执行时间。
许多共享托管公司限制您修改最大执行时间限制的能力,以保护与许多其他应用程序和网站共享的整个服务器。
如果您不想弄乱它,或者您无法增加最大执行时间,您必须联系您的托管服务提供商并要求他们为您增加它。
联系服务器的支持团队,告诉他们您看到了WordPress网站遭遇max_execution_time错误。然后,询问您当前的最大执行时间是多少。最后,要求他们增加您的限制,最好是在60到300之间。请记住,您应该删除任何需要更长时间的插件或主题。
小结
WordPress发生max_execution_time错误是由于PHP脚本缓慢而发生的,通常出现在插件、主题和偶尔的WordPress版本更新中。
您可能会在WordPress仪表盘中看到此错误,以及前端的潜在“技术问题”消息以及来自WordPress的有关情况的电子邮件。
这是一个超级常见的错误。按照我们在此处介绍的步骤,您可以在几分钟内让您的网站再次正常运行。