Windows版Nginx常用命令使用及说明

 更新时间:2026年05月13日 09:45:15   作者:tuokuac  
文章讲解了在Windows环境下使用Nginx的安装、启动、停止、配置检查等ginx常用命令等ginx常见问题解方法N以及日常操作流程,重点强调了-s参数在控制Nginx运行中的的使用作用,并提供了启动、关闭、热更新等等常用操作命令

下面完全针对 Windows 版 Nginx(官方 zip 包,解压即用)讲解,假设你把它解压到

C:\nginx(路径随意,下文用 %NGINX_HOME% 指代)。

一、启动 Nginx(3 种常见办法)

双击图标(最简单,但看不到日志)

进入 %NGINX_HOME%,双击 nginx.exe,黑框一闪即退,

实际上已后台运行。

浏览器访问 http://127.0.0.1 出现 “Welcome to nginx!” 即成功。

命令行启动(推荐,能看到报错)

打开管理员CMD 或 PowerShell

cd C:\nginx
start nginx # 不带参数,后台守护进程

nginx # 会占住当前窗口,Ctrl+C 即停(调试时方便)

注册成 Windows 服务(开机自启,生产常用)

用 “WinSW” 或 “NSSM” 把 nginx.exe 包一层即可,

例如 NSSM 一条命令:

nssm install nginx “C:\nginx\nginx.exe”

二、关闭 Nginx(对应 3 种启动方式)

任务管理器图形关

进程名 nginx.exe,通常有两条:一条 master,一条或多条 worker,

全选 → 结束任务。

命令行优雅关 / 快速关

优雅(等待连接处理完)

nginx -s quit # 必须在 原目录 下执行,否则找不到 pid

立即

nginx -s stop # 发 Terminate 信号

如果以上提示 “找不到 logs/nginx.pid”,就手动杀:

taskkill /f /im nginx.exe

服务方式

​​​

net stop nginx # 假设你刚才注册的服务名就是 nginx
sc delete nginx # 彻底卸载服务

三、Windows 下最常用的 Nginx 命令

检查配置文件写得对不对(改完 conf 必做)

nginx -t

重载配置(热更,不断连接)

nginx -s reload

重新打开日志文件(日志切割后用)

nginx -s reopen

指定配置文件启动(调试多实例时)

nginx -c C:\nginx\conf\nginx.conf

查看版本 / 编译参数

nginx -v
nginx -V

帮助

nginx -h

四、路径 / 权限易错点

必须在 含有 nginx.exe 的目录 执行

否则 nginx -s reload 会报

“could not open error log file: CreateFile() … failed”

80/443 端口占用

通常是被 IIS、SQL Server Reporting、Skype 抢掉。

解决:

netstat -ano | findstr :80
taskkill /PID <占用PID> /F

或把 listen 改成 8080 等高端口。

防火墙弹窗

首次启动 Windows Defender 会提示 “是否允许 nginx 通信”,点“允许”。

中文路径 / 空格

解压路径不要带空格或中文,否则 nginx -t 可能异常。

五、一条完整日常流程(记忆版)

改配置

用 VS Code 打开 C:\nginx\conf\nginx.conf 编辑。

检查

nginx -t # 出现 “successful” 才继续。

热加载

nginx -s reload # 不断服务更新。

想停服

nginx -s quit # 优雅关。

万一卡死

taskkill /f /im nginx.exe # 强制清场。

六、快速查询表(复制即可用)

操作命令
启动start nginx 或 nginx
停止nginx -s quit(优雅)/ nginx -s stop(强制)
重载配置nginx -s reload
验证配置nginx -t
重新打开日志nginx -s reopen
查版本nginx -V
杀进程taskkill /f /im nginx.exe

把上面 7 句记住,Windows 下使用 Nginx 就够用了。

-s是什么,为什么要-s

-snginx 在 Windows/Linux 上共有的“信号(signal)”参数,用来 向“正在运行的 nginx 主进程”发命令,而不是再启一个新进程。

没有 -s 时,你敲 nginx 会尝试 重新启动一个 master,这显然关不掉、也重载不了旧进程,所以必须靠 -s

语法

nginx -s <signal>

signal 只能取 4 个值:

stop | quit | reload | reopen

四个信号分别干什么

信号作用对应 Unix 信号
-s stop立即终止 主进程及其所有 worker(相当于 kill -TERM)SIGTERM
-s quit优雅退出——等现有连接处理完再关机SIGQUIT
-s reload热重载配置——不丢连接、不重启 worker,只重新加载 nginx.confSIGHUP
-s reopen重新打开日志文件(日志切割后用)SIGUSR1

为什么“必须”带 -s

  • 不带 -s 时,nginx 认为你要 “启动” 一个新实例;
  • -s 时,nginx 会读取 logs/nginx.pid 里的 PID,把对应信号发给 那个已经运行的 master 进程,自己立即退出,不占用新端口。

换句话说:

“-s 让 nginx 变成‘遥控器’,而不是‘新实例’。”

Windows 上同样适用

虽然 Windows 没有 Unix 信号机制,但 nginx.exe 内部用 命名事件/线程通信 模拟了这四条命令,用法完全一致:

nginx -s stop      # 关
nginx -s reload    # 热更

一句话记住: 

“想控制已运行的 nginx,就加 -s;不加 -s 就是重新启动。”

七、总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • nginx报错:[emerg] getpwnam(“www“)failed问题及解决

    nginx报错:[emerg] getpwnam(“www“)failed问题及解决

    这篇文章主要介绍了nginx报错:[emerg] getpwnam(“www“)failed问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • Nginx配置出现访问白屏问题的原因与解决

    Nginx配置出现访问白屏问题的原因与解决

    这篇文章主要为大家详细介绍了Nginx配置出现访问白屏问题的原因以及该如何解决,文中的示例代码简洁易懂,有需要的小伙伴可以参考一下
    2025-02-02
  • nginx ServerName匹配规则实现

    nginx ServerName匹配规则实现

    本文主要介绍了nginx ServerName匹配规则实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2007-02-02
  • nginx配置proxy_pass后返回404问题以及Nginx host相关变量的说明

    nginx配置proxy_pass后返回404问题以及Nginx host相关变量的说明

    这篇文章主要介绍了nginx配置proxy_pass后返回404问题以及Nginx host相关变量的说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • django8.5 项目部署Nginx的操作步骤

    django8.5 项目部署Nginx的操作步骤

    nginx是一个开源的,支持高性能,高并发的www服务和代理服务软件。它是一个俄罗斯人lgor sysoev开发的,作者将源代码开源出来供全球使用,下面小编给大家带来了django8.5 项目部署Nginx的操作步骤,感兴趣的朋友一起看看吧
    2022-01-01
  • Nginx代理输出缩放图片的方法

    Nginx代理输出缩放图片的方法

    这篇文章主要为大家详细介绍了Nginx代理输出缩放图片的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • nginx日常维护常用命令

    nginx日常维护常用命令

    这篇文章主要介绍了nginx日常维护如nginx启动、重启、关闭等常用命令,需要的朋友可以参考下
    2014-03-03
  • 启动Nginx.exe出现闪退问题的解决方案

    启动Nginx.exe出现闪退问题的解决方案

    在做项目时,使用老师给的代码,点击Nginx.exe出现闪退的情况,出现这个问题可能出现的情况,端口号被占用或者logs下文件路径有问题,所以本文小编给大家介绍了启动Nginx.exe出现闪退问题的解决方案,需要的朋友可以参考下
    2024-03-03
  • Nginx反向代理基本设置的21个指令详解

    Nginx反向代理基本设置的21个指令详解

    这篇文章主要介绍了Nginx反向代理基本设置的21个指令,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • CentOS下 安装 Nginx的方法

    CentOS下 安装 Nginx的方法

    这篇文章主要介绍了CentOS下 安装 Nginx的方法,本文内容简单,通过实例代码给大家讲解的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12

最新评论