Debian 上 Nginx SSL 性能优化实操指南
一 基础与协议栈优化
二 可直接使用的配置片段
# /etc/nginx/sites-available/your_domain.conf
server {
listen 443 ssl http2;
# 如已编译支持 QUIC,可再加:listen 443 quic reuseport;
server_name your.domain.com;
ssl_certificate /etc/nginx/ssl/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/privkey.pem;
ssl_trusted_certificate /etc/nginx/ssl/chain.pem; # 用于 OCSP 验证
# 协议与曲线
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ecdh_curve X25519:secp384r1;
# 仅保留现代 AEAD 套件(TLS1.3 忽略优先级)
ssl_ciphers 'ECDHE+AESGCM:ECDHE+CHACHA20:!aNULL:!MD5:!DES:!3DES';
# 会话复用
ssl_session_cache shared:SSL:50m;
ssl_session_timeout 10m;
ssl_session_tickets off; # 生产默认关闭
# OCSP Stapling
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 1.1.1.1 valid=300s;
resolver_timeout 5s;
# 安全与性能头
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
# 可选:启用 HTTP/3
# add_header Alt-Svc 'h3=":443"; ma=86400' always;
# 静态资源强缓存
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 30d;
add_header Cache-Control "public, no-transform";
}
location / {
root /usr/share/nginx/html;
index index.html;
}
}
# 80 → 443 强制跳转
server {
listen 80;
server_name your.domain.com;
return 301 https://$host$request_uri;
}
三 系统与网络层调优
四 验证与上线流程
五 进阶与注意事项