系统:ios
nginx -s stop 执行报错
open "/usr/local/var/run/nginx.pid" failed
这个文件确实不存在,文件记录数字其实是该进程的id,这个文件的作用是为了防止启动多个进程副本。
一般解决办法
sudo nginx -c /usr/local/etc/nginx/nginx.conf // 指定一个配置文件
我这边不能解决反而新增一个错误
nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use)
查看nginx进程
ps -ef|grep nginx
查看占用8080端口的服务
lsof -i:8080
看到有node和chrome,看Node想起本地启动了一个dev的服务,是localhost:8080占用了8080端口
停止这个本地localhost:8080服务
再次执行sudo nginx -c /usr/local/etc/nginx/nginx.conf 不再报错
再次重启nginx
- nginx -s stop ; 停止 如果提示没有权限可以加上suod
- nignx 启动
查看pid文件和nginx进程,一切正常