服务器上有多个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 运行状态
相关推荐
逆风局?1 小时前
计算机网络——IP地址
服务器·网络·tcp/ip
Liuzhengyue_1 小时前
Linux shell脚本编程
linux·运维·服务器
李匠20243 小时前
C++学习之服务器EPOLL模型、处理客户端请求、向客户端回复数、向客户端发送文件
运维·服务器·c++·学习
Wayne_Greet3 小时前
Linux服务器——Samba服务器
linux·运维·服务器
无名之逆3 小时前
Hyperlane框架:下一代高性能Rust Web框架 [特殊字符]
服务器·开发语言·前端·后端·http·rust
了不起的杰3 小时前
【Linux操作系统】:信号
linux·运维·服务器
北京华人开创公司5 小时前
安徽京准:NTP网络时钟服务器功能及同步模式的介绍
运维·服务器·网络·时间同步·时钟同步·ntp时间服务器·时钟服务器
流星白龙5 小时前
【Linux】39.一个基础的HTTP Web服务器
linux·服务器·http
在下千玦6 小时前
#无类域间路由(快速复习版)
运维·服务器·网络
共享家95276 小时前
Linux权限管理:从入门到实践
linux·运维·服务器