达到最大执行时间而不是抛出错误

max execution time reached instead of throwing error

提问人:Dariel Pratama 提问时间:9/21/2023 更新时间:9/21/2023 访问量:29

问:

我在 Laravel 10 中有一个应用程序。此应用程序托管在 Apache 中(不使用 php artisan serve)。每次出现错误时,页面都会加载,直到它到达max_execution_time,并且该页面上没有任何有用的显示。这使得调试变得困难,是什么导致了错误? 有人知道如何解决这个问题吗?如果我在错误的论坛上发布它,我很抱歉

enter image description here

PHP Laravel 阿帕奇

评论

1赞 KIKO Software 9/21/2023
您的应用程序可能只是在某个地方兜圈子,直到超时。诀窍是找出这种循环发生的位置。首先,您需要找到一种方法来可靠地导致此超时错误。然后,您可以在代码中插入回显或退出,直到超时不发生,或者您可以看到循环的位置。一旦你找到了循环,你需要找出它发生的原因。

答:

1赞 Ehab Talaat 9/21/2023 #1

检查PHP错误日志: 首先,检查您的 PHP 错误日志。这些日志可能包含有关导致问题的原因的更多详细信息。默认情况下,PHP 错误日志通常位于名为 error 的文件中.log或php_error.log位于 Web 服务器的 logs 目录中。您可以在 php.ini 文件中配置 PHP 错误日志位置。

增加max_execution_time: 如果您的应用程序合法地需要更多时间来执行某些任务,您可以在 php.ini 文件或 Apache 配置中增加max_execution_time。执行此操作时要小心,因为执行时间过长会导致性能问题。如果可能的话,最好优化你的代码。

评论

0赞 Dariel Pratama 9/21/2023
谢谢你的回复。我检查了我的 Web 服务器日志,发现与前端完全相同的单词。如果没有错误,应用程序不需要几分钟即可加载,只需几秒钟。