停止“;php-fpm”;(自制安装)Mac OSX 10.8.2


Stopping "php-fpm" ( homebrew installation ) Mac OSX 10.8.2

我已经成功地使用自制软件安装了PHP-FPM。

我甚至已经将nginx.conf配置为可以工作。然而,每当我在航站楼里做的时候:

$: php-fpm

我得到错误:

[24-Jul-2013 19:58:34] ERROR: failed to open configuration file '/private/etc/php-fpm.conf': No such file or directory (2)
[24-Jul-2013 19:58:34] ERROR: failed to load configuration file '/private/etc/php-fpm.conf'
[24-Jul-2013 19:58:34] ERROR: FPM initialization failed

然而,我的nginx运行良好。

这是根据运行Yii得到的nginx.conf。

server {
        listen       80;
        server_name  campusplugin;
        set $host_path "/var/www/campusplugin";
        root   $host_path;
        set $yii_bootstrap "index.php";
        charset utf-8;
        #access_log  logs/host.access.log  main;
        location / {
            index  index.html $yii_bootstrap;
            try_files $uri $uri/ /$yii_bootstrap?$args;
        }
        location ~ ^/(protected|framework|themes/'w+/views) {
        deny  all;
        }

        #avoid processing of calls to unexisting static files by yii
        location ~ '.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
        try_files $uri =404;
        }

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ '.php$ {
            fastcgi_split_path_info  ^(.+'.php)(.*)$;
            #let yii catch the calls to unexising PHP files
            set $fsn /$yii_bootstrap;
             if (-f $document_root$fastcgi_script_name){
            set $fsn $fastcgi_script_name;
             }
            root           /var/www/campusplugin;
            include fastcgi.conf;
            fastcgi_intercept_errors on;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            include        fastcgi_params;
           fastcgi_param  SCRIPT_FILENAME  $document_root$fsn;
            fastcgi_param  PATH_INFO        $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fsn;
            
        }
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /'.ht {
            deny  all;
        }
    }

我也不能stop的php fpm。我需要停止它,因为我已经稍微修改了php.ini。做这件事的方法是什么??

service php-fpm restart
-bash: service: command not found

我哪里错了?

即使当我输入:php-fpm -v时,我也会得到:

php-fpm -v
PHP 5.3.15 (fpm-fcgi) (built: Aug 24 2012 17:45:59)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies

然而,它显示的是旧的php-fpm,因为我已经安装了5.4。

我在设置时使用了此指南:https://web.archive.org/web/20161220083008/https://echo.co/blog/os-x-1010-限制本地开发环境-apache-php-and-mysql-homebrew

这个命令重新启动我的php fpm:

brew services restart php56

如果你没有酿造服务,试着这样安装:

brew tap homebrew/services

在更现代的版本中,只需进行

brew services start php
brew services stop php
brew services restart php

将启动、停止或重新启动php-fpm服务。

苹果表示:"SystemStarter实用程序已弃用。"

但我发现了另一个很棒的解决方案:

  1. 将其放入~/Library/LaunchDaemons/:https://github.com/tarnfeld/osx-stack/blob/master/LaunchDaemons/org.php-fpm.plist

  2. 根据您的路径更改此plist文件中的路径(例如,我的php-fpm可执行文件位于/usr/sbin而不是/usr/local/sbin)

  3. 将以下内容放入/usr/sbin/或/usr/local/sbin/中的新文件中

/#!/bin/sh
echo "Stopping php-fpm..."
launchctl unload -w /Users/<home-folder>/Library/LaunchDaemons/org.php-fpm.plist
echo "Starting php-fpm..."
launchctl load -w /Users/<home-folder>/Library/LaunchDaemons/org.php-fpm.plist
echo "php-fpm restarted"
exit 0

确保该目录在$PATH 中

现在您可以调用"php restart"来重新启动php fpm

(感谢另一篇文章)

如果你使用mac,你可以检查你的php fpm是否正在运行?

可以使用此命令:php fpm-t

现在,你可以看到问题了!以及如何通过中的此错误信息解决命令行!

我得到了:

方法如下:

1.要签出php-fpm,请使用:

php-fpm php54-fpm 

2.要停止服务,我们必须使用苹果的SystemStarter,如下所示:

SystemStarter php54-fpm restart

在较新版本的Mac OS X(在13.X上测试)中,为了停止php-fpm守护进程并在登录或启动时取消注册,只需运行以下命令即可:

brew services stop php