PHP执行时间 - 阻止Apache停止脚本

时间:2014-10-29 12:26:22

标签: php apache shutdown

我正在尝试在本地Linux Apache下运行PHP脚本而不会被Apache停止。我使用的是PHP 5.5.9-1ubuntu4.4Apache/2.4.7 (Ubuntu)Ubuntu 14.04 LTS 64-bit。 到目前为止我做了什么:

在我的PHP脚本中:

ignore_user_abort(true);
set_time_limit(0);
...
foreach(...) {
    ...
    // inside loop
    usleep(1000);
    ...
}

全部php.ini

max_execution_time=3600;

上述任何内容都没有帮助。脚本在~30秒后停止。我没有想法。我的脚本是否可能因为内存不足而关闭?最好的检查方法是什么?

编辑:

通过添加“ini_set('display_errors',1);”我收到错误Allowed memory size of 134217728 bytes exhausted。所以这是关于记忆的,感谢提示如何检查。

解决方案:

根本问题是使用'foreach'循环。将所有'foreach'循环切换为'for'循环后,内存使用变得更加稳定。

2 个答案:

答案 0 :(得分:2)

ini_set(“max_execution_time”,0);
仅在http中,如果使用https,则必须更改php.ini
请记住重新加载您的Web服务器。

答案 1 :(得分:0)

要查看导致脚本停止的原因,请将以下内容添加到页面顶部:

<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
?>