macOS下valet install卡在Installing nginx directory步骤咨询
macOS 12.3.1 环境下 Valet install 卡在 Nginx 配置步骤的排查方案
排查步骤1:清理残留Nginx进程
安装卡在此步骤90%的原因是旧Nginx进程未正常退出,Valet执行停止Nginx操作时挂起:
- 执行命令查询所有运行中的Nginx进程:
ps aux | grep nginx - 直接一键强制终止所有Nginx进程:
sudo pkill -9 nginx - 再次执行
ps aux | grep nginx确认,除grep自身进程外无其他Nginx相关条目即为清理完成。
排查步骤2:处理Homebrew下的Nginx冲突
macOS 12.3.1 环境下通过Homebrew安装的Nginx常出现服务注册异常、旧配置残留的问题:
- 停止已注册的Nginx服务:
brew services stop nginx - 强制卸载现有Nginx并清理残留配置:
brew uninstall nginx --force # Intel芯片Mac执行 sudo rm -rf /usr/local/etc/nginx # M系列芯片Mac执行 sudo rm -rf /opt/homebrew/etc/nginx - 重新安装Valet依赖的Nginx版本:
brew install nginx - 临时启动Nginx验证可用性:
brew services start nginx,浏览器访问127.0.0.1能看到Nginx默认欢迎页即为正常,随后执行brew services stop nginx停止测试服务。
排查步骤3:修复Valet目录权限
权限不足会导致Valet写入Nginx配置时无响应且不抛出错误日志:
- 对Valet工作目录重新授权:
sudo chown -R $(whoami):staff ~/.config/valet # Intel芯片Mac执行 sudo chown -R $(whoami):staff /usr/local/var/valet # M系列芯片Mac执行 sudo chown -R $(whoami):staff /opt/homebrew/var/valet - 删除之前生成的残缺配置文件:
rm -rf ~/.config/valet/Nginx ~/.config/valet/valet.sock
排查步骤4:清理端口占用
Nginx默认依赖80、443端口,若端口被其他服务占用也会导致配置流程卡住:
- 执行命令查询端口占用:
sudo lsof -i :80 -i :443 - 终止占用端口的Apache、Docker容器、代理工具等相关进程后再继续安装。
完成以上步骤后,不加sudo直接执行valet install即可正常完成安装流程。
内容的提问来源于stack exchange,提问作者Joe Scotto
相关产品推荐
相关产品推荐

