我有一个脚本可以运行大约15分钟,因为它是一个大型的数据迁移工具。
我有这个问题,如果我设置fastcgi_read_timeout 9900; 它永远不会超时,或者如果我把它设置为更less,那么在我的脚本完成运行之前超时。
编辑:我拿走了fastcgi_read_timeout 9900; 从nginx.conf设置max_execution_time = 1300; 在php.ini中,我现在得到一个504网关超时,而不是永远循环。
我怎样才能正确地设置页面应该是活的,直到脚本完成执行?
为什么你想在前台运行这个? 尽pipe可以在configuration文件中破解足够长的时间来获得这种行为,但这是一个非常脆弱的configuration。 这是实际上输出有用的信息给用户的东西吗? 如果不是,这几乎肯定适合后台任务,而不是试图在一个请求中运行它。
即使这是输出给用户,你有没有考虑将其作为后台任务运行,并通过一些asynchronous方法输出给用户?