Nginx保姆级教程(下载+安装+配置,包含所有版本,2026最新)
Nginx 是一款高性能的 Web 服务器,最早是为了解决一个网站同时扛十万连接的问题,现在国内大部分网站的前端入口都是它。Nginx 安装包下载地址:Nginx 安装包(稳定版+主线版,源自官网,放心使用)
Nginx 能托管静态网站,能把请求转给后端程序,能做负载均衡把流量分到多台服务器,还能处理 HTTPS 证书、压缩网页、限制访问频率。一台普通云服务器上用 Nginx 扛几千并发,是很常见的量级。
同类的服务器软件还有 Apache、Caddy 等,Nginx 的长处是并发能力强、内存占用低、配置语法简洁、生态成熟,几乎所有面板和云厂商都在用它。
Nginx 免费开源,支持 Linux、Windows、macOS。接下来手把手带大家把 Nginx 的下载、安装和配置操作搞清楚,全程实测,无任何门槛,电脑小白也能轻松看懂。
Nginx版本介绍
Nginx 主要分为稳定版(Stable)和主线版(Mainline)两个发布通道:| 版本 | 类型 | 最新版本号 | 适合谁 |
|---|---|---|---|
| Mainline | 主线版 | 1.31.8 | 想用新功能、跑 Windows 版 |
| Stable | 稳定版 | 1.30.6 | 生产环境、公司项目 |
| Legacy | 旧稳定版 | 1.28.3 | 仍在收安全补丁,适合还在用 1.28 分支的老项目 |
官方建议生产环境用稳定版,追新功能用主线版。Windows 版可以直用主线版。
Nginx下载
Nginx 安装包下载地址:Nginx 安装包(稳定版+主线版,源自官网,放心使用)| 平台 | 安装包 | 说明 |
|---|---|---|
| Linux | nginx-1.30.6.tar.gz | 稳定版源码包,编译安装 |
| Linux | nginx-1.31.8.tar.gz | 主线版源码包 |
| Windows | nginx-1.30.6.zip | 稳定版免安装包 |
| Windows | nginx-1.31.8.zip | 主线版免安装包,官方推荐 |
| Linux | nginx-1.28.3.tar.gz | 旧稳定分支源码包 |
Nginx安装
1、Windows平台
Nginx 在 Windows 上以绿色软件的形式运行,不需要安装程序,解压即用:1)下载 Windows 版 zip 压缩包(如 nginx-1.26.3.zip),建议解压到非系统盘根目录,如 D:\nginx,避免路径过深或带中文导致问题。

2)双击 nginx.exe 就能启动,屏幕上会闪过一个黑窗口,说明 nginx.exe 已经在后台运行了,可以在任务管理器中找到它:

3)打开浏览器,访问 http://localhost,如果看到 "Welcome to nginx!" 页面,就说明运行成功了。

4)停止 nginx 可以使用下面两个命令,生产环境推荐用 quit:
- nginx -s stop 是强制停止,不管当前有没有请求在跑,立刻结束进程;
- nginx -s quit 是优雅停止,会等当前处理中的请求处理完再退出。
配置nginx.conf(核心步骤)
nginx 的所有行为都靠 conf/nginx.conf 这个配置文件来控制。默认配置展示的是欢迎页面,但你用 nginx 肯定不会只为了看个欢迎页,肯定要换成自己的站点,那就需要了解配置文件里各个项是干什么的。
用记事本或 VS Code 打开 nginx.conf,它的结构是分层嵌套的:最外层叫 http 块,里面包裹着 server 块(站点配置),server 块里又有 location 块(路径匹配)。
http {
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
}
}
初学者最需要关心的就是 server 块里的几个配置项:
- listen 指定端口号,默认 80;
- server_name 填你网站的域名,本地测试用 localhost 或者 127.0.0.1 就行;
- root 指定网站文件的存放目录;
- index 设置默认首页文件名,比如 index.html 或 index.htm。
举个例子,如果网站文件放在 D 盘 www 文件夹里,配置就是:
server { listen 80; server_name localhost; root D:/www; index index.html; }
改完配置文件不能直接双击 nginx.exe,那样会启动两个进程导致冲突。正确的流程分两步:
- 第一步是语法检查。在命令行进入 nginx 目录,执行 nginx -t,如果返回 "syntax is ok" 和 "test is successful",说明写对了,可以放心用。
- 第二步是重载配置。执行 nginx -s reload,nginx 会读取新的配置文件生效,而且不会中断正在处理的请求。
2、Linux平台
在 Linux 服务器上安装 nginx,推荐用源码编译的方式,虽然比直接用包管理器多几个步骤,但灵活性大大提高,你可以选择需要编译的模块、自定义安装路径,甚至做一些性能优化配置。1)安装编译依赖
编译 nginx 之前,需要先安装编译工具和必要的库文件。Ubuntu / Debian:
sudo apt update && sudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev openssl libssl-dev -y
CentOS / RHEL / Rocky:
sudo yum groupinstall "Development Tools" && sudo yum install pcre pcre-devel zlib zlib-devel openssl openssl-devel -y这些依赖的作用分别是:
- build-essential 提供 gcc 编译器等基础工具;
- PCRE 库是 nginx 重写模块和正则支持必需的;
- zlib 用于 gzip 压缩;
- OpenSSL 提供 HTTPS/SSL 支持。
缺了任何一个,编译时都会报错。
2)解压源码包
下载 nginx-1.30.4.tar.gz 上传到 Linux 服务器上(可以用 scp、wget 或任何你习惯的方式),然后解压并进入目录:tar -zxvf nginx-1.30.4.tar.gz && cd nginx-1.30.4

3)配置编译参数
这是源码编译最关键的一步。./configure 用来指定安装路径和需要包含的模块。最简单的方式直接运行:./configure但生产环境更推荐按需定制模块。下面是常见配置:
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module --with-http_gzip_static_module --with-stream各个参数的含义:
- --prefix 指定安装目录,默认是 /usr/local/nginx;
- --with-http_ssl_module 启用 SSL 支持,网站要上 HTTPS 必须开启;
- --with-http_v2_module 启用 HTTP/2 支持,能显著提升页面加载速度;
- --with-http_stub_status_module 提供监控页面,可以查看 nginx 的运行状态;
- --with-stream 开启 TCP/UDP 代理功能,适用于非 HTTP 协议的反向代理场景。
4)编译和安装
配置完成后,运行下面两条命令:make && sudo make install编译过程取决于服务器性能,一般 1-3 分钟就能完成。如果某个步骤出错,通常是依赖没装全,补装对应库后重新跑 ./configure 即可。安装完成后,所有文件会放在刚刚 --prefix 指定的目录下,不手动指定的话,默认路径也是 /usr/local/nginx:

5)启动和验证
用下面的命令启动 nginx:sudo /usr/local/nginx/sbin/nginx启动后可以通过 curl 或者浏览器验证:
curl http://localhost看到 "Welcome to nginx!" 的响应内容说明安装成功。

如果没有显示,可以检查是否开启了防火墙,或者用 ps aux | grep nginx 确认进程是否正常运行。
解决Nginx端口被占用
端口被占用是新手最常见的启动问题。如果启动 nginx 时报错 "address already in use",说明 80 端口已经被其他程序占用了。常用的解决方法有两个,可以用 sudo lsof -i:80 或 sudo netstat -tlnp | grep 80 查看是哪个程序在占用,关掉冲突程序,或者修改 nginx 配置文件中的端口号。
Nginx新手常见问题
1)Windows 双击 nginx.exe 窗口一闪就没了?正常现象,它是后台进程。2)80 端口被占用怎么办?Linux 用 ss -lntp | grep :80 找进程,Windows 用 netstat -ano | findstr :80,杀掉或改 Nginx 监听端口。
3)Nginx 和 Apache 怎么选?Nginx 擅长高并发和静态资源,Apache 模块多、.htaccess 灵活。新项目一般选 Nginx。
ICP备案:
公安部网络备案: