Nginx-基础详细的配置文件说明
详细的注释说明:
# 用户和工作进程配置
user nginx;
worker_processes auto;
# 错误日志和进程 ID 文件路径
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
# 事件模块配置
events {
worker_connections 1024;
}
# HTTP 模块配置
http {
# 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;
# 文件传输和网络优化配置
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
# Gzip 压缩配置
gzip on;
gzip_comp_level 5;
gzip_min_length 256;
gzip_proxied any;
gzip_vary on;
gzip_types application/javascript text/css text/xml application/xml application/rss+xml text/plain image/svg+xml;
# HTTP 服务器配置
server {
# 监听端口和域名配置
listen 80;
server_name example.com;
# 根路径和默认文档配置
root /usr/share/nginx/html;
index index.html;
# 静态资源缓存配置
location ~* \.(js|css|pdf|docx?|xlsx?|pptx?|txt|ico|jpe?g|png|gif|bmp|svg)$ {
expires 7d;
}
# 提升网页访问速度配置
location ~* \.(html|htm|txt)$ {
add_header Cache-Control "public";
add_header Vary Accept-Encoding;
expires 1d;
}
# 反向代理配置
location /api {
proxy_pass http://backend; # 反向代理到后端服务器
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
# 别名配置
location /images {
alias /var/www/images;
}
}
# HTTPS 服务器配置
server {
# 监听端口和域名配置
listen 443 ssl;
server_name example.com;
# SSL 证书和私钥配置
ssl_certificate /etc/nginx/ssl/example.crt;
ssl_certificate_key /etc/nginx/ssl/example.key;
# 根路径和默认文档配置
root /usr/share/nginx/html;
index index.html;
# 静态资源缓存配置
location ~* \.(js|css|pdf|docx?|xlsx?|pptx?|txt|ico|jpe?g|png|gif|bmp|svg)$ {
expires 7d;
}
# 提升网页访问速度配置
location ~* \.(html|htm|txt)$ {
add_header Cache-Control "public";
add_header Vary Accept-Encoding;
expires 1d;
}
# 反向代理配置
location /api {
proxy_pass http://backend; # 反向代理到后端服务器
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
# 别名配置
location /images {
alias /var/www/images;
}
}
# 后端服务器配置
upstream backend {
server backend1.example.com; # 后端服务器地址
}
}
请注意,此配置文件中的路径和域名仅作为示例,您需要根据您自己的实际情况进行修改。另外,SSL 证书的路径和名称也需要根据实际情况进行调整。