外观
🔧 Nginx 配置指南
📖 配置概述
本文档介绍如何配置 Nginx 作为反向代理,将请求转发到网关服务。支持 HTTPS 协议和负载均衡。
⚙️ 配置示例
负载均衡配置
nginx
# 上游服务器配置
upstream admin_upstream {
# 使用 ip_hash 确保会话一致性
ip_hash;
# 网关节点列表
server 127.0.0.1:8080; # 节点1
server 127.0.0.2:8080; # 节点2
# 健康检查配置
check interval=3000 rise=2 fall=5 timeout=1000 type=http;
check_http_send "HEAD / HTTP/1.0\r\n\r\n";
check_http_expect_alive http_2xx http_3xx;
}HTTPS 服务配置
nginx
server {
# 监听配置
listen 443 ssl;
server_name admin.demo.wueasy.com;
charset utf-8;
# SSL证书配置
ssl_certificate /opt/ssl/wueasy/fullchain.crt;
ssl_certificate_key /opt/ssl/wueasy/cert.key;
# SSL协议配置
ssl_protocols TLSv1.2 TLSv1.3;
# 加密套件配置
ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+ECDSA+AES128:EECDH+aRSA+AES128:RSA+AES128:EECDH+ECDSA+AES256:EECDH+aRSA+AES256:RSA+AES256:!aNULL:!MD5:!RC4:!DHE;
# SSL优化配置
ssl_ecdh_curve secp384r1;
ssl_prefer_server_ciphers on;
ssl_stapling on;
ssl_stapling_verify on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
# 日志配置
access_log /dev/null;
error_log /var/log/nginx/admin_error.log error;
# 错误页面配置
error_page 404 /404.html;
# 反向代理配置
location / {
proxy_pass http://admin_upstream;
# 文件上传大小限制
client_max_body_size 200M;
# 代理头部配置
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header REMOTE_ADDR $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
# 超时配置
proxy_connect_timeout 60s;
proxy_read_timeout 60s;
proxy_send_timeout 60s;
# 缓冲配置
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
}
}🔐 安全配置说明
SSL 配置
- 仅支持 TLSv1.2 和 TLSv1.3
- 使用高强度加密套件
- 启用 OCSP Stapling
- 配置安全的 SSL 会话缓存
代理安全
- 隐藏后端服务器信息
- 限制上传文件大小
- 配置合理的超时时间
- 启用请求缓冲
⚡ 性能优化
负载均衡优化
- 使用 ip_hash 保持会话一致性
- 配置健康检查确保服务可用性
- 合理设置超时参数
SSL优化
- 启用会话缓存
- 配置会话超时时间
- 使用高性能加密曲线
缓冲配置
- 设置适当的缓冲区大小
- 配置足够的缓冲数量
- 控制缓冲区使用
⚠️ 注意事项
证书配置
- 确保证书路径正确
- 定期更新SSL证书
- 检查证书权限
负载均衡
- 确保后端服务可用
- 监控服务健康状态
- 合理配置权重
日志管理
- 配置错误日志级别
- 定期轮转日志文件
- 监控异常访问
重要提示
- 部署前请确保SSL证书有效
- 定期检查配置文件语法
- 关注安全漏洞更新
- 保持适当的监控告警