本文最后更新于66 天前,其中的信息可能已经过时,如有错误请发送邮件到1169063119@qq.com
Nginx是一个高性能的 HTTP 服务器、反向代理服务器 和 负载均衡器,广泛用于处理高并发、静态资源服务、反向代理、缓存、SSL 加密等场景。
Nginx 的核心作用
静态资源服务器
直接托管 HTML、CSS、JS、图片等静态文件,响应速度快,适合高并发场景。
反向代理
将客户端请求转发到后端服务(如 Tomcat、Spring Boot、Node.js),隐藏真实服务器信息。
nginx反向代理的配置方式
server{
listen 81;
server_name localhost;
location/api/{
proxy_pass http://localhost:8081/admin/;
}
}
负载均衡
将流量分发到多个后端服务器,提升系统吞吐量和容灾能力(支持轮询、权重、IP 哈希等策略)。
nginx负载均衡的配置方式
upstream webservers{
server 127.0.0.1:8080 weight=90 ;
#server 127.0.0.1:8088 weight=10 ;
}
server {
listen 81;
server_name localhost;
location / {
root html/sky;
index index.html index.htm;
}
}
SSL/TLS 终端
统一处理 HTTPS 加密/解密,减轻后端服务器压力。
缓存加速
缓存静态或动态内容,减少后端请求压力。
安全防护
限制请求速率、过滤恶意 IP、防止 DDoS 攻击。
URL 重写与重定向
灵活配置 URL 规则(如 HTTP 跳转 HTTPS、路径重定向)。
典型应用场景
- 前后端分离架构
- Nginx 托管前端静态文件,反向代理到后端 API 服务。
- 微服务网关
- 通过反向代理和负载均衡,将请求分发到不同微服务。
- 高并发静态资源服务
- 直接返回图片、视频等文件,减少应用服务器压力。
- 多域名托管
- 通过
server_name
配置多个域名指向不同服务。
Nginx 的优势
- 高性能:基于事件驱动模型,能轻松应对数万并发连接。
- 低资源消耗:内存占用少,适合资源受限环境。
- 模块化设计:支持动态扩展(如 HTTP 压缩、缓存模块)。
- 跨平台:支持 Linux、Windows、macOS。
Nginx单项代理的好处
- 提高访问速度
- 进行负载均衡
- 保证后端服务安全