服务器上有多个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 运行状态
相关推荐
墨理学AI9 小时前
虚拟机导致的服务器交换内容占用过大(服务器卡顿)问题 快速解决
运维·服务器
程序猿老A9 小时前
轻量应用服务器怎么搭建个人网站?
服务器
盛世宏博智慧档案10 小时前
一站式智慧档案解决方案,如何实现防火防盗漏水多维度安全监测实践
服务器·网络·数据库
枫叶轻语10 小时前
【Nginx 从入门到实战 09】前后端统一入口:部署页面与接口的完整配置
nginx·全栈
熊猫钓鱼>_>10 小时前
平行视界兼容模式与魔法变量配置避坑【鸿蒙心迹】
运维·服务器·开发语言·笔记·华为·harmonyos·openharmony
niuyueyang11 小时前
MCP `/mcp/status` Lifecycle 技术方案
java·服务器·数据库
无言听风雨丶11 小时前
Nginx 深度实战:从架构原理到生产排错
运维·nginx·架构
曦夜日长11 小时前
主从 Reactor 高并发服务器实战 (三):服务器套接字Socket模块详解与实现
运维·服务器·网络
老约家的可汗12 小时前
Linux开发三件套:make、git、gdb 入门指南
linux·运维·服务器
从琳开始98912 小时前
从Socket到TCP回显服务器:Java网络编程完整指南
java·服务器·网络·tcp/ip·java-ee