一、查找 Nginx 位置
全局搜索 nginx.conf 位置
find / | grep nginx.conf
查看 nginx 进程和安装目录
ps -ef | grep nginx
二、Nginx 重启
本地电脑(直接安装的 Nginx)
nginx -t # 检查配置语法,ok 才能继续
nginx -s reload # 重启(平滑重载)
服务器(直接安装的 Nginx)
cd /安装目录 # 进入 nginx 安装目录
./nginx -t # 检查配置
./nginx -s reload # 重启
Docker 中的 Nginx
docker ps # 查找 nginx 容器 name / id
docker restart nginx # 重启整个容器
docker exec <容器名> nginx -s reload # 只重载 nginx 配置(推荐)
例如:
docker exec robot-nginx nginx -s reload
三、Xshell / Linux 常用命令
cd / # 进入根目录
cp -rf # 复制(递归、强制)
rm -rf # 删除(递归、强制,慎用)
四、定位 Docker 中 Nginx 的配置与真实路径
- 确认是否用 Docker 部署
docker ps # 找 nginx 容器 id
docker exec -it <容器id> bash # 进入容器
nginx -t # 查看 nginx 配置路径
ls -1 /etc/nginx/conf.d # 查看 conf.d 下的配置文件
cat /etc/nginx/conf.d/iov.conf # 查看具体项目配置(端口、路径)
exit # 退出容器
> 注意:容器里的项目路径可能是虚拟路径,需要从挂载映射找宿主机真实路径。
- 查看 Docker 挂载映射
docker inspect <容器id> | grep -A 20 Mounts
- 区分部署方式(映射不同)
docker-compose version # 是否安装了 docker-compose
find / -name docker-compose.yml 2>/dev/null # 查找 compose 文件
cat /opt/ms/release/docker-compose.yml # 查看 nginx 的 volumes 映射
> `docker run` 和 `docker-compose` 部署方式不同,映射写法也不同。
五、接口转发到 web-server 配置示例
接口转发到 web-server
location ^~ /api/ {
add_header Access-Control-Allow-Headers Abc;
proxy_pass http://web-server-robot;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host host:server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
六、前端上传包 + 改配置的标准流程
-
通过 Xftp 查看 nginx 配置的项目端口及路径
-
`find / | grep nginx.conf` 找 nginx 安装位置
-
`docker ps` 确认是否 Docker 部署,拿到容器 id
-
`docker exec -it <id> bash` 进入容器
-
`nginx -t` 查看配置路径
-
`ls -1 /etc/nginx/conf.d` 看配置文件
-
`cat /etc/nginx/conf.d/xxx.conf` 查看项目端口、路径
-
`exit` 退出容器
-
`docker inspect <id> | grep -A 20 Mounts` 查真实挂载路径
-
上传前端包到真实路径 → 改配置 → 重载 nginx
最后重载
docker exec <容器名> nginx -s reload