所以我有一个循环执行多个cURL调用的脚本。大约7-9分钟后,它随机停止执行。我已设置.user.ini文件来调整这些设置:
max_execution_time = 30000
max_input_time = 200
我相信我有快速的CGI但我不能为我的生活弄清楚为什么这会让我死的。我在前端有一个提交表单,当它在错误日志中没有任何内容时,我只获得500。还有什么我可能会失踪的?某些PHP设置在某处限制了cURL的数量或执行时间?
编辑:所以这个问题肯定是FastCGI限制了我的时间与参数“FcgidBusyTimeout”。我的托管公司为我做了一个测试,一切都很好。现在的问题是,因为我在共享主机上,他们不会为人们提供FastCGI超时。我将尝试将我的脚本循环到自身上(有点像它再次调用自身的函数循环)并查看新进程是否让我超过了超时问题。
答案 0 :(得分:1)
FastCGI有自己的超时。
<IfModule mod_fcgid.c>
IPCConnectTimeout 20
IPCCommTimeout 120
FcgidBusyTimeout 200
</IfModule>
因此,如果您的PHP超时足够高,则可能导致您的FastCGI进程在此之后被杀死。
如果您的脚本较重,最好通过CLI运行脚本,那么您只有PHP超时。