【发布时间】:2014-06-20 12:37:26
【问题描述】:
我和我的一位同事有以下争论。我说过,如果用户关闭连接(例如关闭窗口或选项卡),Apache 不会终止 PHP 进程。而我的同事则相反 - 如果 TCP 连接关闭,Apache 将终止 PHP 进程。
我们确实对其进行了测试,看起来我是对的,但我不确定它是如何工作的。
【问题讨论】:
-
我喜欢这个问题。当我在看服务器时,一个问题是 Apache 喜欢闲逛太久。没想到 PHP 是贡献者!
我和我的一位同事有以下争论。我说过,如果用户关闭连接(例如关闭窗口或选项卡),Apache 不会终止 PHP 进程。而我的同事则相反 - 如果 TCP 连接关闭,Apache 将终止 PHP 进程。
我们确实对其进行了测试,看起来我是对的,但我不确定它是如何工作的。
【问题讨论】:
首先:你是对的 ;-)
发生的情况是,您的浏览器选择忽略答案并继续前进。它不会向 apache 发送某种“我退出了,你可以停止”。
进程将一直运行直到完成。 因此,如果您编写一个无限循环,关闭浏览器窗口将无法拯救您。脚本最大执行时间最终会,但这是另一个话题。
【讨论】:
kill。
ignore_user_abort 设置与此有何关系?