mac下通过homebrew安装的php-fpm的关闭和重启

本文详细介绍了在Mac环境下,通过brew安装的PHP-FPM找不到php-fpm.pid文件时如何进行重启操作的方法。包括手动指定pid文件位置、使用sudopkill-INT命令以及通过launchctl控制等技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

真心崩溃:

之前看到的所有的php-fpm的博客,关于php-fpm的重启和关闭,都需要php-fpm.pid里保存的pid,我在mac下通过brew安装的,并使用的是默认的配置。找遍了所有的地方,都未找到php-fpm.pid文件,通过命令 'find / -name php-fpm.pid' 也确实未搜索到!

没有pid,自然不知道使用 sign 信号,传递给谁,也就不知道怎么重启了!

通过ps,netstat,这2命令也不熟悉,没咋看,瞎使用了下,没找到对应的php-fpm。

kill,killall,也基本不知道用法了,也没解决了(熟悉命令迫在眉睫!)

google搜索,总结:

1.关于php-fpm.pid的问题:

默认,配置文件中pid配置是注释的,也就是未指定pid生成的位置(我天真的以为会自动生成)。不会按默认路径自动生成,所以也就不存在php-fpm.pid文件。

配置:

1)pid = /usr/local/var/run/php-fpm/php-fpm.pid

2)创建文件,并设置权限,保证php-fpm的用户有权限修改它

touch /usr/local/var/run/php-fpm/php-fpm.pid

chown www /usr/local/var/run/php-fpm/php-fpm.pid // 假定php-fpm的用户是 'www'

chmod 644 /usr/local/var/run/php-fpm/php-fpm.pid

3)重启php-fpm即可(之前就是因为不知道重启),然后就可以使用 kill -USR2 `cat /usr/local/var/run/php-fpm/php-fpm.pid`

2.sudo pkill -INT -o php-fpm  // 这条命令简单粗暴!直接有效(同样的忘记了pkill 命令。。。)

3.老早以前,就说有时间翻译下 launchctl 命令,一直欠着帐!但我记得。。。也可以使用这个来关闭和重启

可以定义一个脚本:/usr/local/bin/fpm-restart,使用 launchctl 命令来控制php-fpm

#!/bin/sh

echo "Stopping php-fpm..."
launchctl unload -w ~/Library/LaunchAgents/homebrew-php*.plist

echo "Starting php-fpm..."
launchctl load -w ~/Library/LaunchAgents/homebrew-php*.plist

echo "php-fpm restarted"
exit 0
4.发现有人想将php-fpm配置成:php-fpm.sock

只需要将:listen = 127.0.0.1:9000 修改成:listen = /usr/local/var/run/php-fpm/php-fpm.sock

over了,总结:多看博客,多搜问题!英语搜索很关键,英文很重要!尤其是使用google搜索,国内真心没发说!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值