我面临一个关于从我的 php 代码中杀死 Linux 进程的问题。我正在使用proc_open()
后台函数从我的 php 代码中运行 Scrapy 工具。
它工作正常,但现在我想使用它的进程 ID 终止这个进程。为此,我使用exec("sudo kill -9 $pid");
where$pid
是我从我的 php 代码中获取的进程 ID。
问题是这个进程代表 apache 用户运行。我认为可能存在一些权限问题,所以我像这样将 apache 用户添加到 sudoers 文件中,apache ALL=(ALL) NOPASSWD:ALL
但我仍然无法杀死它。不知何故,相同的 kill 命令可以在我的 putty 控制台上运行。
我的代码在 Amazon EC2 实例上。
我的问题是,我怎样才能杀死由 php 中的 pid 标识的进程?