【问题标题】:How can I find out which PHP script a process is running in Linux?如何找出进程在 Linux 中运行的 PHP 脚本?
【发布时间】:2012-03-17 02:55:01
【问题描述】:

使用 FastCGI 处理程序运行 Linux、Apache、PHP 5.3。

是否有可能找出正在为 linux 进程执行的脚本?我一直在谷歌上搜索,并没有找到任何有用的东西。

【问题讨论】:

    标签: php linux apache process


    【解决方案1】:
    pstree | grep php
    ps aux | grep php
    ps xuww | grep php
    ...
    

    【讨论】:

    • 如果您将 php 作为 Apache 模块运行,您不会以这种方式看到任何内容,您只能看到 Apache 进程
    • 你需要使用ps aux | grep apache 用于 apache 进程
    【解决方案2】:

    在一个 SSH 窗口中:

    telnet localhost 80
    

    在另一个中,找出端口号:

    lsof -p `pidof telnet`
    

    然后,找出过程:

    netstat -nap | grep {port}
    

    最后:

    strace -o /tmp/output -f -r -s4096 -p {PID}
    

    将按顺序向您显示当您与服务器建立 httpd 连接时运行的每个进程。如果您搜索此列表,您会找到您的 PHP 脚本。

    【讨论】:

      【解决方案3】:

      只需使用:

      ps aux | grep php
      

      向您展示使用其路径运行的 php 脚本。

      【讨论】:

        【解决方案4】:

        也许你可以试试这个!

        ps ax | grep *.php
        

        【讨论】:

          【解决方案5】:

          您可以为此使用pgrep,例如

          pgrep -l php
          

          或:

          pgrep php && echo PHP script is running || echo PHP script is NOT running
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-11-10
            • 2011-07-29
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多