服务器上有多个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 运行状态
相关推荐
christine-rr2 天前
linux常用命令(4)——压缩命令
linux·服务器·redis
東雪蓮☆2 天前
深入理解 LVS-DR 模式与 Keepalived 高可用集群
linux·运维·服务器·lvs
乌萨奇也要立志学C++2 天前
【Linux】进程概念(二):进程查看与 fork 初探
linux·运维·服务器
雨落Liy2 天前
Nginx 从入门到进阶:反向代理、负载均衡与高性能实战指南
运维·nginx·负载均衡
Yyyy4822 天前
Nginx负载均衡集群实验步骤
运维·nginx·负载均衡
绿箭柠檬茶2 天前
Ubuntu 服务器配置转发网络访问
服务器·网络·ubuntu
獭.獭.2 天前
Linux -- 信号【上】
linux·运维·服务器
路由侠内网穿透2 天前
本地部署 GPS 跟踪系统 Traccar 并实现外部访问
运维·服务器·网络·windows·tcp/ip
ZERO_pan2 天前
服务器装机遇到的问题
运维·服务器
l1t2 天前
利用DeepSeek实现服务器客户端模式的DuckDB原型
服务器·c语言·数据库·人工智能·postgresql·协议·duckdb