致命错误:超过 500 秒的最大执行时间
Posted
技术标签:
【中文标题】致命错误:超过 500 秒的最大执行时间【英文标题】:Fatal error: Maximum execution time of 500 seconds exceeded 【发布时间】:2014-04-20 17:46:15 【问题描述】:我在 php 中使用 cURL 并在一段时间后收到以下错误(我猜是 300 秒后):
。
我用谷歌搜索了这个,发现一些对我也不起作用的解决方案,例如:
ini_set('MAX_EXECUTION_TIME', -1);
error_reporting(1); // to display only fatal error
set_time_limit(0);
我尝试了MAX_EXECUTION_TIME
和MAX_INPUT_TIME
并将它们设置为-1
,但没有任何帮助。
更新
我也用过这个:
ignore_user_abort(true);
ini_set('MAX_EXECUTION_TIME', 0);
error_reporting(1);
set_time_limit(0);
在cURL
内部
curl_setopt($s, CURLOPT_TIMEOUT, 0);
但它仍然给我以下错误:
致命错误:D:\wamp\www\optimized.php 第 321 行的最大执行时间超过 500 秒
【问题讨论】:
Fatal error: Maximum execution time of 30 seconds exceeded in script 的可能重复项 【参考方案1】:也将其设置为 300,即大约 300 秒 = 5 分钟
ini_set('MAX_EXECUTION_TIME', 300);
如果您将其设置为 0 ,则表示没有限制。
ini_set('MAX_EXECUTION_TIME', 0);
对于 cURL,你可以使用这个
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
这里又是 0 表示无限...
【讨论】:
如果我们将它设置为 -1 会怎样?ini_set('MAX_EXECUTION_TIME', -1);
好的..我也试试这个。
当前脚本正在运行,我会使用sleep(2)
函数来减慢它的速度......因为它工作过一次。所以如果它再次停止,我会试试这个
它仍然显示execution time of 500 seconds
????在你设置为 0 之后???【参考方案2】:
当您使用 curl 时,使用 0
使 curl 的超时 infinite
curl_setopt($ch, CURLOPT_TIMEOUT, 0); // or provide number of seconds!
【讨论】:
好的。但目前我正在使用curl_setopt($ch, CURLOPT_TIMEOUT, 9000);
@Mubin 您应该在问题中提到这一点!尝试使用php script .php
命令从控制台运行代码并检查它是否运行,如果仍然超时,则可能是您在php.ini
中的php
配置问题
@Mubin 也在你的php.ini
文件中查找max_execution_time
。虽然你已经从代码中设置了这个,但也尝试从 ini 文件中进行更改,因为它不适合你!
如何从命令行运行它?我试图在我的计算机属性中添加 php.exe 路径并尝试运行此c:/path_to_php.exe -f path_toFile
【参考方案3】:
我改变了:
default_socket_timeout=1200
关于php.ini
它对我有用。
【讨论】:
以上是关于致命错误:超过 500 秒的最大执行时间的主要内容,如果未能解决你的问题,请参考以下文章
PHP 页面加载问题:PHP 致命错误:超过 30 秒的最大执行时间