我有一个脚本,它以CSV形式为客户生成报告,将其写入文件,然后使用readfile()
输出到浏览器。
我遇到的问题是,大型报告(生成大约需要11分钟,大小约为700kb)会导致500错误。 Apache说“脚本在返回标题之前超时”
我尝试在脚本中使用set_time_limit(0)
并将php.ini中的max_execution_time设置为900(15分钟)无济于事。我在整个脚本中发送了error_log()
个电子邮件,他们报告说脚本生成正常,脚本中的ini_get('max_execution_time')
返回0(我假设这意味着无限制)。
如果我通过SSH登录并使用php scriptname.php运行脚本,它运行正常并将CSV输出到shell。
是否会出现另一个设置,可能是在apache内部,导致超时问题?我知道我应该将这个脚本移动到一个cron,但现在时间是一个问题(不是它总是与客户端一起)所以我想解决超时问题。