php-致命错误:超过300秒的最大执行时间
我不断收到此PHP错误:
致命错误:超过300秒的最大执行时间
我尝试将php.ini中的max_execution_time和max_input_time(Apache和cli)设置分别设置为0、-1和4000秒。
而且我仍然收到错误消息:
致命错误:超过300秒的最大执行时间
同样,我的脚本运行了300秒钟以上才收到此消息
我正在通过命令行运行脚本。
我还检查了我的max_execution_time,以便查看我使用的是max_input_time。
更有趣的是,我尝试将max_execution_time和max_input_time设置为5秒,并且我的脚本将运行5秒钟以上,然后我才能看到:
致命错误:超过300秒的最大执行时间
16个解决方案
80 votes
如果您使用的是WAMP,请转到:
增加$cfg['ExecTimeLimit']中的config.default.php,然后转到
config.default.php(根据您的安装更改路径)
打开config.default.php,并将$cfg['ExecTimeLimit']的值更改为0:
$cfg['ExecTimeLimit'] = 0;
这将解决PhpMyAdmin导入的问题。
Vipin Dubey answered 2019-09-25T00:08:43Z
56 votes
您可以在脚本的开头添加。
ini_set('MAX_EXECUTION_TIME', '-1');
Tules answered 2019-09-25T00:07:52Z
50 votes
Xampp用户
前往$cfg['ExecTimeLimit'] = 0;
打开config.inc.php
搜索$cfg['ExecTimeLimit'] = 0;
更改为0表示无限制或设置更大的值
如果找不到,请添加$cfg['ExecTimeLimit'] = 0;(或更大的值)
保存文件并重新启动服务器
Technotronic answered 2019-09-25T00:09:47Z
23 votes
我遇到了类似的情况,事实证明Codeigniter(我使用的PHP框架)实际上设置了自己的时间限制:
在system / core / Codeigniter.php中,版本2.1.3中的第106行显示以下内容:
if (function_exists("set_time_limit") == TRUE AND @ini_get("safe_mode") == 0)
{
@set_time_limit(300);
}
由于没有其他方法可以避免更改核心文件,因此我删除了它,以便允许通过php.ini进行配置,以及为CLI请求提供无限的最大执行时间。
但是,我建议在将来的CI版本升级时将此更改记录在某处。
xiankai answered 2019-09-25T00:10:32Z
9 votes
在脚本中尝试以下操作:
set_time_limit(1200);
Darth Egregious answered 2019-09-25T00:10:57Z
6 votes
这是正确的答案:
去
c:\wamp\apps\phpmyadmin3.4.10.1\libraries\config.default.php
查找并设置
$cfg['ExecTimeLimit'] = 0;
重新启动所有服务并做了。
llioor answered 2019-09-25T00:11:42Z
4 votes
转到xampp / phpmyadmin / libraries / config.default.php
并进行以下更改
from $cfg['ExecTimeLimit'] = ’300′;
to $cfg['ExecTimeLimit'] = ’0′;
Gaurav Arora answered 2019-09-25T00:12:14Z
1 votes
PHP CLI的默认执行时间是无限的。
这设置了允许脚本运行的最长时间(以秒为单位) 在解析器终止之前。 这有助于防止效果不佳 捆绑服务器的书面脚本。 默认设置为30。 从命令行运行PHP时,默认设置为0。
[http://gr.php.net/manual/en/info.configuration.php#ini.max-execution-time]
检查您是否在安全模式下运行PHP,因为在该模式下它会忽略所有时间exec设置。
Mob answered 2019-09-25T00:13:00Z
0 votes
WAMP用户:
1)转到C:\ wamp \ apps \ phpmyadmin
2)打开config.inc
3)添加$ cfg ['ExecTimeLimit'] =‘3600'; 到文件。
4)保存文件并重新启动服务器。
该文件将覆盖php.ini,将为您工作!
Asi answered 2019-09-25T00:13:57Z
0 votes
就我而言,当我在Phpmyadmin中遇到该错误时,我尝试使用MySQL-Front并成功导入数据库。
注意:您仍然可以使用此问题下提供的解决方案在Phpmyadmin中解决您的问题。
Jamshid Hashimi answered 2019-09-25T00:14:30Z
0 votes
如果以上答案无效,请尝试检查您的代码,以我的经验,无限循环也会导致该问题。请检查您的else if语句。
answered 2019-09-25T00:14:55Z
0 votes
在Codeigniter 3.0.x版中,system / core / Codeigniter.php不包含时间限制,也不包含插入
ini_set('MAX_EXECUTION_TIME', -1);
将不会起作用,因为codeigniter将使用其自己的函数set_time_limit()覆盖它。因此,您必须从codeigniter中删除该功能,或者只需插入即可
set_time_limit('1000');
如果您想将其更改为1000秒,请在php文件的开头。如果您想运行它,可以将时间设置为0(零)。
Wenuka answered 2019-09-25T00:15:33Z
0 votes
在Xampp上,必须在php.ini中检查mysql.connect_timeout。 因此,例如,将其更改为:
mysql.connect_timeout = 3600
该时间将始终以秒为单位(在我的示例中为1小时)
andymnc answered 2019-09-25T00:16:05Z
0 votes
MAMP用户编辑php.ini解决了这个问题-一行:
max_execution_time = 30; 每个脚本的最大执行时间,以秒为单位
将其设置为更高的值会起作用。
该文件位于php / php5.6.25 / conf / php.ini中(显然,您需要弄湿正在使用的php版本的文件-您可以从MAMP首选项中找到该文件。
Jeremy Young answered 2019-09-25T00:16:50Z
0 votes
对于本地AppServ
转到C:\ AppServ \ www \ phpMyAdmin \ libraries \ config.default.php
找到$cfg['ExecTimeLimit']并将其值设置为0。
所以看起来像
$cfg['ExecTimeLimit'] = 0;
Zunnie Kanittika answered 2019-09-25T00:17:36Z
-1 votes
您可以设置时间限制:
ini_set('max_execution_time', 1000000000000000);
binhhoang18 answered 2019-09-25T00:18:01Z