3

我正在将 PHP 与 heroku 一起使用。由于某些数据库插入和查询,我不断收到请求超时错误。

我将此行添加到我的所有 php 文件中以避免此错误:

set_time_limit(0);

但是,我仍然收到此错误。heroku 是否忽略此命令?

我做了一个简单的检查,看看时间限制是否正在改变:

echo 'TIME : '.ini_get('max_execution_time');
set_time_limit(0);
echo 'TIME : '.ini_get('max_execution_time');

它正在从 30(默认值)更改为 0。尽管进行了更改,但我仍然收到错误消息。

另外,我想补充一点,ajax 正在调用 php 文件。

此外,据我所知,php 未设置为安全模式,因此没有理由忽略该命令。

Heroku 建议使用后台作业,据我所知,如果任务花费超过 30 秒,它会强制您执行。有没有人在不使用后台作业的情况下进行管理?

更新:尝试使用:

ini_set('max_execution_time', 0);

还是不想上班

4

1 回答 1

2

如果您必须在 Heroku 上超过 30 秒的请求超时,您将需要使用后台作业 - 没有办法解决这个问题(如果请求超过 30 秒,Heroku 只会终止请求)。Heroku 对此有一些文档

于 2013-01-14T22:19:21.360 回答