查找记录到文件的 PHP 进程

查找记录到文件的 PHP 进程

我已通过浏览器启动了 PHP 脚本,由于循环错误,即使关闭浏览器后脚本仍会继续执行。我注意到它是因为脚本正在将错误消息记录到我的日志文件(路径已知)中。

我们有一个 Apache 服务器,许多开发人员一起工作,用户是nmdev.那么我怎样才能找出正在运行并记录到我的日志文件的进程呢?

ps -afe | grep php53给了我今天的许多流程,例如:

nmdev 26518 24151 0 11:51 ? 00:00:00 /opt/xxx/yyy/apache-php5/bin/httpd -k start

答案1

我的问题的解决方案是使用:

/sbin/fuser /path/to/logfile

这给了我写入文件的所有进程。我把他们都杀了,毫不留情。问题解决了。

答案2

您可以使用lsof查找访问某个文件的进程的 PID:

[rhusar@rhusar ~]$ ps xafu | grep cat
COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF     NODE NAME
cat     5700 rhusar    1w   REG   0,29       57 13154551 /tmp/abc

但是,如果它通过 HTTPd 本身进行日志记录,我认为您可能只会看到 HTTPd 实例的 PID。

相关内容