【问题标题】:Restarting Apache should not allow PHP scripts to continue running after?重启 Apache 后应该不会让 PHP 脚本继续运行?
【发布时间】:2010-07-05 10:32:10
【问题描述】:

我有一个正在运行的 PHP 脚本,有时我只想重新启动 apache 并摆脱所有正在运行的 PHP 脚本。

但是,我注意到重启后,PHP 脚本将继续运行。为什么是这样?是否有确保 Apache 正确重启的选项?还是ignore_user_abort 函数导致了这个问题?

感谢大家的帮助

【问题讨论】:

    标签: php apache


    【解决方案1】:

    这取决于您如何重新启动 httpd。 “软重启”(例如killall -HUP httpd)允许当前运行的 httpd 子进程在死前完成请求。这消除了浏览器在请求期间“死机”的情况,但这确实意味着当前运行的 PHP 脚本(因为它们在 httpd 子进程中运行)将继续运行。

    【讨论】:

      【解决方案2】:

      PHP 脚本也可以从 CLI 启动,它们在后台运行并执行各种工作。这些不是由 apache 管理的,您必须单独管理它们。

      ignore_user_abort 只忽略用户,你不能真正忽略服务器关闭:) 除非你没有真正关闭,而只是重新加载配置,正如 Ignacio 上面所说的

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-03-15
        • 2013-01-21
        • 1970-01-01
        • 1970-01-01
        • 2011-08-25
        • 1970-01-01
        相关资源
        最近更新 更多