CentOS LNMP 环境下 Nginx 优化实战
一 系统与环境准备
二 核心参数优化
三 静态资源与压缩缓存
四 安全与运维实践
五 可直接使用的配置片段
# 进程与连接
worker_processes auto;
worker_rlimit_nofile 200000;
events {
use epoll;
multi_accept on;
worker_connections 10240;
}
http {
include mime.types;
default_type application/octet-stream;
# 高效传输
sendfile on;
tcp_nopush on;
tcp_nodelay on;
# 日志:按需关闭或缓冲
access_log off;
# access_log /var/log/nginx/access.log main buffer=64k flush=1m;
error_log /var/log/nginx/error.log warn;
# 压缩
gzip on;
gzip_vary on;
gzip_min_length 10240;
gzip_types text/plain text/css application/javascript application/json application/xml;
gzip_disable "MSIE [1-6]\.";
# 静态资源长期缓存
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 1d;
add_header Cache-Control "public, immutable";
}
# 打开文件缓存
open_file_cache max=1024 inactive=10s;
open_file_cache_valid 60s;
open_file_cache_min_uses 2;
open_file_cache_errors on;
# 长连接(客户端)
keepalive_timeout 15;
keepalive_requests 10000;
# 反向代理示例(可按需调整)
upstream backend {
server 127.0.0.1:8080;
keepalive 100;
}
server {
listen 80 backlog=65535;
server_name _;
location / {
proxy_pass http://backend;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_buffering on;
proxy_buffer_size 16k;
proxy_buffers 1024 16k;
}
}
}
应用前执行语法检查与热加载: