Nginx 作为一款高性能的开源 Web 服务器和反向代理服务器,凭借其轻量级、高并发处理能力和灵活的模块化设计,被广泛应用于以下核心场景:
sendfile 零拷贝技术,降低 CPU 和内存开销。nginx
server {
location /static/ {
root /var/www/html;
expires 30d; # 缓存控制
}
}weight)、IP 哈希(ip_hash)、最少连接(least_conn)。max_fails 和 fail_timeout 剔除故障节点。示例配置:
upstream backend {
server 10.0.0.1:8080 weight=3;
server 10.0.0.2:8080;
server 10.0.0.3:8080 backup; # 备用服务器
}
server {
location / {
proxy_pass http://backend;
proxy_set_header Host $host;
}
}
nginx
server {
listen 443 ssl http2;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
gzip on; # 启用压缩
...
}rewrite)、重定向(redirect)和流量控制。nginx
location /api/v1 {
proxy_pass http://api_v1_service;
}
location /api/v2 {
proxy_pass http://api_v2_service;
}limit_req 模块防止 DDoS 攻击。allow/deny)、Basic 认证。nginx
limit_req_zone $binary_remote_addr zone=req_limit:10m rate=10r/s;
location / {
limit_req zone=req_limit burst=20;
}nginx
location ~ \.php$ {
proxy_pass http://php_backend;
}
location ~* \.(jpg|css|js)$ {
root /var/www/static;
}access_log)和错误日志(error_log)。nginx
location /ws {
proxy_pass http://websocket_backend;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}通过合理配置,Nginx 能够显著提升系统的性能、安全性和可维护性,是现代 Web 架构的核心组件之一。