0

我需要运行一个巨大的进程,它将运行 10 多分钟。我最大化了max_execution_time,但在我的错误日志中,我得到一个 SIGTERM,然后是一个 SIGKILL。

我读了一些关于 SIGTERM 和 SIGKILL 的信息,它们来自守护进程,但我不知道如何阻止它发生。我只需要禁用它一晚。

4

1 回答 1

0

与其试图忽略信号,不如找出发送信号的人以及原因。如果您从命令行启动 php,则没有人会发送该信号,并且您的脚本时间将一直存在

但是,如果您实际上是作为对 http 请求的响应而启动此过程,则可能是 FastCGI 管理器的 Web 服务器限制了它等待脚本完成的时间。它也可能简单地终止脚本,因为客户端连接(用户浏览器和 http 服务器之间)已终止。

所以你应该问自己一个重要的问题——这个信号的来源是什么,以及如何增加这个超时时间。还请提供有关如何启动此脚本以及正在运行的平台的所有详细信息。

于 2016-10-19T23:14:32.530 回答