服务器上有多个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 运行状态
相关推荐
bantinghy19 分钟前
Linux进程单例模式运行
linux·服务器·单例模式
就叫飞六吧9 天前
基于keepalived、vip实现高可用nginx (centos)
python·nginx·centos
AWS官方合作商9 天前
AWS ACM 重磅上线:公有 SSL/TLS 证书现可导出,突破 AWS 边界! (突出新功能的重要性和突破性)
服务器·https·ssl·aws
算法练习生9 天前
Linux文件元信息完全指南:权限、链接与时间属性
linux·运维·服务器
忘了ʷºᵇₐ9 天前
Linux系统能ping通ip但无法ping通域名的解决方法
linux·服务器·tcp/ip
weixin_425023009 天前
Spring Boot使用MCP服务器
服务器·spring boot·后端·spring ai·mcp
小生云木9 天前
Linux离线编译安装nginx
linux·运维·nginx
qq_200337399 天前
python输出值,写入test.yaml文件
java·服务器·前端
成工小白9 天前
【Linux】文件系统
linux·运维·服务器
PHP武器库9 天前
[Hestia]开源网络服务器控制面板,快速、可靠、开源
运维·服务器·网络·开源·php