服务器上有多个nginx,如何知道启动的是哪个?

根据网上查的方案和自己总结的目前是有三种


方案1:链接: 服务器上有多个nginx,如何知道启动的是哪个?

javascript 复制代码
首先ps -ef | grep nginx,获取个pid
lsof -p pid,根据输出可以看到启动这个pid的路径,即可知道是哪个nginx

按照这个方法,我查到了

javascript 复制代码
/www/server/nginx/sbin/nginx

方案2:链接: 查询linux运行中的nginx

javascript 复制代码
1. 查看nginx的PID,以常用的80端口为例:

netstat -anop | grep 0.0.0.0:80
(上面也可以改为netstat -anop | grep nginx)


2. 通过相应的进程ID(比如:4562)查询当前运行的nginx路径:

ll  /proc/4562/exe


3. 获取到nginx的执行路径后,使用-t参数即可获取该进程对应的配置文件路径,如:

# /usr/local/nginx/sbin/nginx -t

按照这个方法,我查到了

javascript 复制代码
/www/server/nginx/sbin/nginx

方案3:链接: nginx讲解

javascript 复制代码
找到nginx路径: which nginx 或 whereis nginx

按照这个方法,我查到了

javascript 复制代码
/usr/bin/nginx

现在纠结的是方案三的命令查出的结果和前两方案查的结果不一样,

后面我在想能不能不在路径下去重启nginx,例如这种

javascript 复制代码
这种需要在具体路径下才能执行
cd /usr/sbin/ 进入nginx目录
./nginx              启动nginx
./nginx -s stop      关闭nginx
./nginx -t           测试nginx配置
ps -ef | grep nginx  查看nginx进程

后面我在网上看到这种,不知道这个是不是不需要依赖具体路径呢

javascript 复制代码
systemctl start nginx    # 启动 Nginx
systemctl stop nginx     # 停止 Nginx
systemctl restart nginx  # 重启 Nginx
systemctl reload nginx   # 重新加载 Nginx,用于修改配置后
systemctl enable nginx   # 设置开机启动 Nginx
systemctl disable nginx  # 关闭开机启动 Nginx
systemctl status nginx   # 查看 Nginx 运行状态
相关推荐
vb2008112 分钟前
Ubuntu 系统下 AMQP 协议 RabbitMQ服务器部署
服务器·ubuntu·rabbitmq
岁岁种桃花儿9 小时前
Nginx 站点垂直扩容(单机性能升级)全攻略
网络·nginx·dns
Xの哲學9 小时前
Linux SMP 实现机制深度剖析
linux·服务器·网络·算法·边缘计算
2501_9061505610 小时前
私有部署问卷系统操作实战记录-DWSurvey
java·运维·服务器·spring·开源
钦拆大仁10 小时前
单点登录SSO登录你了解多少
服务器·sso
only火车头10 小时前
升级 ceph (16.2 -> 18.2) ceph mon 启动失败
服务器·ceph
RisunJan11 小时前
Linux命令-ifconfig命令(配置和显示网络接口的信息)
linux·运维·服务器
lbb 小魔仙11 小时前
【Linux】100 天 Linux 入门:从命令行到 Shell 脚本,告别“光标恐惧”
linux·运维·服务器
早川91912 小时前
Linux系统
linux·运维·服务器
郝学胜-神的一滴13 小时前
Linux进程与线程控制原语对比:双刃出鞘,各显锋芒
linux·服务器·开发语言·数据结构·c++·程序人生