LOGO 首页 OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 技术文档 其他文档  
 
网站管理员

Windows 版 Nginx 安装配置速查:解压即用,不用虚拟机

admin
2026年10月21日 1:8 本文热度 312

Windows 版 Nginx 在本地开发、调试前端打包产物时非常方便。

不需要 Linux 虚拟机,解压即用。

这篇文章把安装、目录、命令、配置要点一次讲清,照着做就能跑起来。

目录结构 → 常用命令 → 配置要点(location 优先级 / root vs alias / proxy_pass 尾斜杠)

01

下载与安装:绿色免安装

Windows 版 Nginx没有安装包,是解压即用的绿色版,就三步:

1. 打开官网 nginx.org/en/download.html

2. 在 Stable version(稳定版)下,下载 nginx/Windows-x.x.x.zip

3. 解压到磁盘某个目录,比如 C:\nginx-1.24.0\

解压后目录里已经有 nginx.exe 和一套 conf/ 配置。不需要装任何依赖,命令行启动即可。

建议把文件夹改名成 C:\nginx(去掉版本号),以后升级只覆盖版本目录、保留 conf/。别放中文路径。

02

目录结构:和 Linux 的差异在这

Windows 版的目录结构是关键差异,直接列出来:

C:\nginx\                       # 根目录(不是 /etc/nginx)
├── nginx.exe                   # 主程序
├── conf\                       # 配置目录,对应 Linux 的 /etc/nginx
│   ├── nginx.conf              # 主配置(核心)
│   ├── conf.d\                 # 额外配置文件目录(同名)
│   └── mime.types
├── html\                       # 默认网页目录
└── logs\                       # 日志目录(access.log / error.log)
                                                                                                           
功能
Windows 路径
Linux 路径
配置根目录
C:\nginx\conf\
/etc/nginx/
站点配置目录
conf\conf.d\
conf.d/ 但无 sites-*
网页目录
C:\nginx\html\
/usr/share/nginx/html
日志目录
C:\nginx\logs\
/var/log/nginx/

最大的区别:Windows 版没有 sites-available / sites-enabled 这套启停机制。除了 nginx.conf 主文件,就是 conf\conf.d\。所有额外配置都放 conf.d\ 里的 .conf 文件,主配置靠这一行加载:

http {
    include  mime.types;
    include  conf.d/*.conf;   # 加载 conf\conf.d\ 下的所有 .conf
}

没有 sites-available 就用 conf.d,效果一样。

03

启动与停止:Windows 专属命令

Windows 没有 systemd,用命令直接操作进程。先进入 nginx 目录再执行:

cd C:\nginx

# 启动(不带窗口常驻)
start nginx

# 验证是否在跑
tasklist | findstr nginx

# 重载配置(改完配置后用这个,不中断服务)
nginx -s reload

# 优雅停止
nginx -s quit

# 强制停止
nginx -s stop

· 用 start nginx 启动,不要双击 nginx.exe 或直接敲 nginx——直接启动窗口会一直开着占住终端

· 改配置永远用 nginx -s reload,改完先 nginx -t 自检

nginx -t      # 输出 syntax is ok 即配置没问题

改配置 = nginx -t 自检 → nginx -s reload 热重载,一条龙。

04

配置语法和 Linux 一样,路径要当心

配置语法和 Linux 完全一样,层级也相同(全局块 → events → http → server)。Windows 上唯一要注意的,是路径怎么写:

# Linux 写法
root  /var/www/myweb;

# Windows 写法(两种都行,推荐正斜杠)
root  C:/nginx/html/myweb;
# root  C:\nginx\html\myweb;   ← 反斜杠有转义语义,容易错

强烈建议 Windows 配置里统一用正斜杠 /,反斜杠在 Nginx 配置里有转义语义,写错会解析出诡异路径。

05

location 匹配规则:四条优先级

location 在 server 块里用,按 URL 路径来分发处理方式。四条匹配规则按优先级从高到低排列:

server {
    location = /demo {}        # 1. 精确匹配,只吃 /demo
    location ^~ /img/ {}       # 2. 前缀匹配,命中后不再检查正则
    location ~ \.png$ {}       # 3. 正则匹配(~* 不区分大小写)
    location / {}              # 4. 通用前缀匹配,兜底
}

· = /demo(精确匹配,优先级最高):只匹配 /demo 这一个地址

· ^~ /img/(带 ^~ 的前缀匹配):命中即止,不再看正则

· ~ \.png$(正则匹配):按文件后缀区分处理,~* 不区分大小写

· /(通用前缀,兜底):匹配所有路径,实际配置里基本都会写一个

优先级口诀:精确(=) > 带 ^~ 的前缀 > 正则(~) > 通用前缀 /

06

root 与 alias:拼接方式不同

两者都是把 URL 映射到本地文件,拼接方式不同:

# root:整个 URL 拼到根目录后面
location / {
    root C:/nginx/html/myweb;
}
# /img/logo.png → C:/nginx/html/myweb/img/logo.png

# alias:用本地目录替换掉 location 匹配的那段 URL
location /static/ {
    alias C:/nginx/static-assets/;
}
# /static/logo.png → C:/nginx/static-assets/logo.png

· 映射到站点主目录 → 用 root

· 把某个 URL 前缀指向一个不相关的目录 → 用 alias

· alias 结尾的尾斜杠要和 location 路径斜杠对齐,对不齐就是 404

root 是拼,alias 是换。记住这句话就够了。

07

反向代理:三个高频注意点

server {
    listen 80;
    server_name localhost;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

注意点 1:proxy_pass 结尾要不要 /,天壤之别

proxy_pass http://127.0.0.1:8080;     # 无尾斜杠:路径原样透传
                                        # /api/login → /api/login
proxy_pass http://127.0.0.1:8080/;    # 带尾斜杠:用 / 替换匹配段
                                        # /api/login → /login

注意点 2:三行 proxy_set_header 必带

后端要靠 Host 识别站点,靠 X-Real-IP / X-Forwarded-For 拿真实用户 IP。不加这几行,后端看到的永远是 127.0.0.1。

注意点 3:本地测试常见坑

proxy_pass 要写死 127.0.0.1,不要写 localhost,避免解析到 IPv6 导致连接失败。

08

小结:三句话记住全文

1. 解压即用。下载 zip 解压到 C:\nginx,用 start nginx 启动、nginx -s reload 重载。

2. 目录差异。配置在 conf\nginx.conf + conf\conf.d\,没有 sites-available 那套,路径用正斜杠更安全。

3. 语法通用。location 匹配规则、root/alias 的区别、proxy_pass 尾斜杠、proxy_set_header 三行,照搬到 Windows 一样生效。

Windows 版只是换了个壳,配置语法和 Linux 完全一致。本地开发调试,够用了。

· END ·


阅读原文:原文链接


该文章在 2026/10/21 10:34:48 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2026 ClickSun All Rights Reserved  粤ICP备13012886号-9  粤公网安备44030602007207号