Nginx命令最全详解(2026最新版)

Nginx是大型架构核心,下面我详解Nginx命令@mikechen

一、基础服务控制命令(最重要)
1. 启动 Nginx

nginx

或:

systemctl start nginx

作用:启动 Nginx 主进程(master + worker)

2. 停止 Nginx(立即停止)

nginx -s stop

特点:直接杀 worker 进程(可能丢请求)

3. 优雅停止 Nginx(推荐)

nginx -s quit

特点

  • 等当前请求处理完再退出
  • 更安全(生产推荐)

4. 重启 Nginx

systemctl restart nginx

等价于:

  • stop + start

二、平滑重载(高频面试重点)
5. 平滑重载配置(最常用)

nginx -s reload

核心机制:

  • 不停止服务
  • worker 进程平滑切换
  • 零宕机更新配置

👉 生产环境最重要命令之一

6. 重新打开日志文件

nginx -s reopen

用途:

  • 日志切割(logrotate)
  • 避免日志丢失

三、配置检查类命令
7. 检查配置语法

nginx -t

输出示例:

nginx: configuration file /etc/nginx/nginx.conf test is successful

8. 指定配置文件检查

nginx -t -c /etc/nginx/nginx.conf

用途:

  • 多环境配置验证

9. 查看 Nginx 编译参数

nginx -V

包含:

  • 编译模块
  • 路径信息
  • 版本信息

👉 面试常问:判断是否支持 gzip / ssl / http2

四、进程管理类
10. 查看 Nginx 进程

ps -ef | grep nginx

典型结构:

  • master process
  • worker process

11. 查看 master PID

cat /run/nginx.pid

或:

cat /var/run/nginx.pid

12. 手动杀进程(慎用)

kill -9 <pid>

不推荐原因:

  • 可能导致连接中断
  • 不优雅关闭

五、日志查看类(排错核心)
13. 实时访问日志

tail -f /var/log/nginx/access.log

14. 实时错误日志

tail -f /var/log/nginx/error.log

15. 过滤错误日志

grep "error" /var/log/nginx/error.log

六、状态与性能相关
16. 查看连接状态(stub_status)
如果开启了:

location /nginx_status {
    stub_status;
}

访问:

curl http://localhost/nginx_status

输出类似:

Active connections: 120
server accepts handled requests
 10000 10000 30000
Reading: 2 Writing: 10 Waiting: 108

七、16个命令总结表

分类 命令
启动 nginx
停止 nginx -s stop
优雅停止 nginx -s quit
重启 systemctl restart nginx
重载配置 nginx -s reload
重新打开日志 nginx -s reopen
配置检查 nginx -t
指定配置检查 nginx -t -c file
版本信息 nginx -V
查看进程 ps -ef | grep nginx
PID查看 cat nginx.pid
杀进程 kill -9 pid
access日志 tail -f access.log
error日志 tail -f error.log
错误过滤 grep error
状态监控 stub_status

 

评论交流
    说说你的看法