2011-11-18 104 views
8

我在我的机器上设置了php-fpm,并使用自制软件(特别是自制软件包)来安装它。一切都安装正常,如果我打开终端并键入命令“PHP-FPM”它启动罚款。不幸的是,如果我尝试运行诸如“php-fpm stop”之类的命令,我会在下面看到这条消息。有没有人有任何想法可能会导致这种情况或如何让它工作?如果我尝试用kill命令杀死进程,它似乎会自动重启。PHP-FPM在Mac Lion上停止/重新加载问题(OSX 10.7)

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 

回答

3

另外,使用USR2信号使得PHP-FPM重新加载其配置文件:

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

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

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

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

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

此外,您可以从终端更新文件数据库,并执行查找调用。 尝试运行这些命令使用sudo

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

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

locate php-fpm.pid 
0

你还可以在活动监视器关闭PHP-FPM。只需选择进程并按退出按钮。

5

您可以使用Lanchctl:

停止:

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

开始:

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

适应的版本号 “php55” 您的环境。

+0

这是做这件事(安装或升级自制PHP时,你会得到这样的效果的说明)的正确,干净的方式。 –

+0

这适用于我,除了代字号。当我删除代字号时,它会起作用。 – NotoriousWebmaster

+0

我不得不在'〜/ Library/LaunchAgents /'中查找我已安装的自制PHP的正确.plist – DigitalDesignDj

1
sudo killall php-fpm 

使用此命令,可以杀死php-fpm。 我已经尝试过,它的工作原理。

系统:Mac OS X 10.11.4