【问题标题】:PHP-FPM Stop/Reload Issues on Mac Lion (OSX 10.7)Mac Lion (OSX 10.7) 上的 PHP-FPM 停止/重新加载问题
【发布时间】:2011-11-18 02:20:43
【问题描述】:

我正在我的机器上设置 php-fpm,并使用 homebrew(特别是 homebrew-alt)安装它。一切都安装得很好,如果我打开终端并输入命令“php-fpm”,它就会启动得很好。不幸的是,如果我尝试运行任何命令,例如“php-fpm stop”,我会收到以下消息。有谁知道可能是什么原因造成的,或者我怎样才能让它工作?如果我尝试使用 kill 命令终止进程,它似乎会自动重启。

Usage: php [-n] [-e] [-h] [-i] [-m] [-v] [-t] [-p <prefix>] [-g <pid>] [-c <file>] [-d foo[=bar]] [-y <file>]
  -c <path>|<file> Look for php.ini file in this directory
  -n               No php.ini file will be used
  -d foo[=bar]     Define INI entry foo with value 'bar'
  -e               Generate extended information for debugger/profiler
  -h               This help
  -i               PHP information
  -m               Show compiled in modules
  -v               Version number
  -p, --prefix <dir>
                   Specify alternative prefix path to FastCGI process manager (default: /usr/local/Cellar/php/5.3.8).
  -g, --pid <file>
                   Specify the PID file location.
  -y, --fpm-config <file>
                   Specify alternative path to FastCGI process manager config file.
  -t, --test       Test FPM configuration and exit

【问题讨论】:

    标签: homebrew php


    【解决方案1】:

    你可以使用 Lanchctl:

    停止:

    launchctl unload -w ~/Library/LaunchAgents/homebrew-php.josegonzalez.php55.plist
    

    开始:

    launchctl load -w ~/Library/LaunchAgents/homebrew-php.josegonzalez.php55.plist
    

    根据您的环境调整版本号“php55”。

    【讨论】:

    • 这是正确、干净的做法(在使用 Homebrew 安装或升级 PHP 时,您会得到有关此效果的说明)。
    • 这对我有用,除了波浪号。当我删除波浪号时,它可以工作。
    • 我必须查看 ~/Library/LaunchAgents/ 才能为我安装的自制 php 找到正确的 .plist
    【解决方案2】:

    或者,使用 USR2 信号使 php-fpm 重新加载其配置文件:

    kill -USR2 `cat /usr/local/var/run/php-fpm.pid`
    

    【讨论】:

      【解决方案3】:
      sudo killall php-fpm
      

      使用这个命令,可以杀死php-fpm。 我试过了,效果很好。

      系统:Mac OS X 10.11.4

      【讨论】:

        【解决方案4】:

        我在 OSX Lion 上安装了 php-fpm(通过 macports),并使用 kill 命令停止它。它似乎工作正常。

        你是想直接杀死php-fpm,还是使用pid文件?会有很多 php-fpm 实例,因为它适用于子进程,您可能不会杀死主应用程序。我使用的命令是

        sudo kill `cat /pid-path/php-fpm.pid`
        

        我不知道通过自制软件安装时为 php-fpm 设置的 pid 文件位置是什么。但是你可以从编译脚本,或者 php-fpm 的 conf 文件(如果定义的话)中找到。

        您还可以从终端更新文件数据库,并进行定位调用。 尝试使用 sudo 运行这些命令

        ln -s /usr/libexec/locate.updatedb /usr/bin/updatedb
        updatedb
        

        updatedb 可能需要一些时间才能完成。然后就做

        locate php-fpm.pid
        

        【讨论】:

          【解决方案5】:

          您也可以在活动监视器中关闭 php-fpm。只需选择进程并按退出按钮。

          【讨论】:

            猜你喜欢
            • 2011-10-30
            • 2011-09-30
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-09-21
            • 1970-01-01
            • 2011-11-23
            相关资源
            最近更新 更多