> 技术文档 > Nginx 详解_nginx100%免费版

Nginx 详解_nginx100%免费版



📌 一、什么是 Nginx?

✅ Nginx(engine x)是一个 高性能、高并发、轻量级Web 服务器反向代理服务器
✅ 同时支持:HTTP 服务器、反向代理、负载均衡、缓存、动静分离等功能

典型应用场景:

  • 网站服务器(如静态页面、图片、视频服务)
  • 反向代理(隐藏真实服务器)
  • 负载均衡(分发请求)
  • 接口限流、黑白名单
  • HTTPS 终端、SSL卸载

📌 二、Nginx 核心模块组成

模块 作用 http 处理 HTTP 请求,支持反向代理、缓存、访问控制等 server 定义虚拟主机,监听端口和域名 location 匹配具体请求路径,做转发、代理或直接返回 upstream 配置后端服务器集群,实现负载均衡 events 控制连接数、IO模型(epoll/kqueue)等性能参数

📌 三、核心配置结构(实战级)

worker_processes 4; # 工作进程数(CPU核数)events { worker_connections 1024; # 每个进程最大连接数}http { include mime.types; default_type application/octet-stream; upstream backend { server 127.0.0.1:8081 weight=3; server 127.0.0.1:8082; } server { listen 80; server_name www.example.com; location /static/ { root /var/www/html; } location /api/ { proxy_pass http://backend; } }}

📌 四、反向代理(经典)

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

✅ 作用:客户端请求先到 Nginx,由 Nginx 转发给后端服务器


📌 五、负载均衡策略(面试重点)

upstream backend { server 192.168.1.10 weight=3; server 192.168.1.11 weight=1;}

支持算法:

算法 作用 轮询(默认) 顺序分配请求 weight 权重 权重大者分配多 ip_hash 同一IP固定访问同一后端 least_conn 连接数最少的优先

📌 六、动静分离(高性能优化)

location ~* \\.(jpg|png|css|js|ico)$ { root /usr/share/nginx/html/static; expires 30d; # 强缓存}location / { proxy_pass http://backend;}

✅ 静态资源 Nginx 直接返回,动态请求转发后端,减轻服务器压力


📌 七、Nginx 限流/防刷(实战超经典)

limit_req_zone $binary_remote_addr zone=limitZone:10m rate=10r/s;server { location /api/ { limit_req zone=limitZone burst=5 nodelay; proxy_pass http://backend; }}

✅ 限流效果:同一 IP 每秒最多 10 个请求,超出进入排队


📌 八、Nginx 支持 HTTPS(SSL配置)

server { listen 443 ssl; server_name www.example.com; ssl_certificate /etc/nginx/ssl/cert.pem; ssl_certificate_key /etc/nginx/ssl/cert.key; location / { proxy_pass http://backend; }}

✅ 作用:

  • 数据加密传输
  • 防止中间人攻击
  • 配置简单,性能好

📌 九、Nginx 热部署 & 日志

nginx -s reload # 热加载配置nginx -s stop # 停止Nginx# 日志路径access_log logs/access.log;error_log logs/error.log;

📌 🔥 十、面试必问核心总结

知识点 快速回答 Nginx 为什么高性能? IO 多路复用(epoll),异步非阻塞,单线程高并发 负载均衡策略有哪些? 轮询、权重、ip_hash、least_conn 动静分离怎么做? 静态资源 Nginx 直接处理,动态交后端 Nginx 限流怎么做? limit_req 限 IP 请求速率 Nginx 怎么实现 HTTPS? ssl_certificate、ssl_certificate_key

📌 十一、Nginx 应用场景总结

✅ 网站服务器(部署静态文件)
✅ 网关(API 反向代理、接口聚合)
✅ 负载均衡(高并发转发、后端集群)
✅ 安全防护(限流、防刷、IP 过滤)
✅ 图片/视频 CDN 服务器
✅ 接入 HTTPS,安全加密传输


📌 十二、总结一句话:

Nginx = 高性能反向代理 + 负载均衡 + 静态服务器 + 安全防护神器,互联网架构必备!