🚀 Nginx 架构优势
Nginx 是高性能 Web 服务器/反向代理。根据 W3Techs 2023 统计,34.2% 的网站使用 Nginx,Top 1000 网站中占比 45.6%。
34.2%
全球网站使用
45.6%
Top 1000 网站
4x
性能超 Apache
10x
并发连接能力
Nginx vs Apache 核心区别
| 维度 | Nginx | Apache |
|---|---|---|
| 架构 | 事件驱动(异步) | 进程/线程(同步) |
| 性能 | 高并发、低内存 | 并发性能一般 |
| 静态文件 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| 反向代理 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| 配置复杂度 | 中 | 高(.htaccess) |
| 推荐场景 | 高并发、静态文件、反向代理 | 共享主机、动态内容 |
💡 独特观点
Nginx 的真正优势不是"快",而是架构设计。事件驱动模型让 Nginx 在内存占用极低的情况下处理海量并发连接。
⚙️ 安装与基础配置
Nginx 安装非常简单。主流系统都提供官方包。
1. 安装 Nginx
📝 各系统安装命令
# Ubuntu/Debian
sudo apt update
sudo apt install nginx -y
# CentOS/RHEL
sudo yum install epel-release -y
sudo yum install nginx -y
# macOS(Homebrew)
brew install nginx
# Docker(快速启动)
docker run -d -p 80:80 --name nginx nginx:alpine
# 验证安装
nginx -v
# nginx version: nginx/1.25.32. 基础配置文件结构
📝 Nginx 配置文件结构(Linux)
# 主配置文件
/etc/nginx/nginx.conf
# 站点配置(推荐)
/etc/nginx/sites-available/ # 可用配置
/etc/nginx/sites-enabled/ # 启用配置(软链接)
# 其他配置
/etc/nginx/conf.d/ # 额外配置片段
# 静态文件目录
/var/www/html/
# 日志目录
/var/log/nginx/
├── access.log # 访问日志
└── error.log # 错误日志📝 最小可用配置(nginx.conf)
user www-data;
worker_processes auto; # 自动设置为 CPU 核心数
pid /run/nginx.pid;
events {
worker_connections 1024; # 每个 worker 最大连接数
}
http {
# 基础配置
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
# MIME 类型
include /etc/nginx/mime.types;
default_type application/octet-stream;
# 日志格式
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
error_log /var/log/nginx/error.log warn;
# Gzip 压缩
gzip on;
gzip_vary on;
gzip_min_length 1024;
gzip_types text/plain text/css application/json application/javascript;
# 包含站点配置
include /etc/nginx/sites-enabled/*;
}📝 总结与展望
Nginx 是高性能 Web 服务的基石。通过本文的学习,你应该掌握了:
🎯 核心要点
- 架构优势:事件驱动、高并发、低内存
- 安装配置:各系统安装、配置文件结构
- 反向代理:proxy_pass、Header 修改、WebSocket 支持
- 负载均衡:Round Robin、Least Connections、IP Hash、健康检查
- 缓存优化:proxy_cache、浏览器缓存、Cache Purge
- SSL/TLS:Let's Encrypt、HSTS、TLS 1.3、OCSP Stapling
- 安全加固:隐藏版本、限流、防注入、Rate Limiting
- 性能调优:worker 优化、连接数、缓冲区、超时
- Gzip/Brotli:压缩优化、预压缩
- 日志管理:自定义格式、日志切割、分析工具
🚀 未来展望
Nginx 生态正在快速演进,值得关注的方向:
- Nginx Unit:动态应用服务器(支持 Node.js、Python、Go)
- Nginx Amplify:SaaS 监控平台(免费版可用)
- QUIC/HTTP3:Nginx 1.25+ 实验性支持
- Envoy:云原生代理(与 Nginx 互补)
- AI 优化:智能负载均衡、自动调优