news 2026/4/18 0:31:06

Nginx常用配置

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Nginx常用配置

Nginx 常用配置围绕静态资源服务、反向代理、负载均衡、HTTPS 配置、限流等核心场景,以下是结构化的常用配置示例及关键说明。

一、 全局基础配置(nginx.conf 顶部)

控制 Nginx 进程的核心参数,影响整体性能。

# 工作进程数,建议等于 CPU 核心数 worker_processes 4; # 错误日志路径及级别(debug/info/warn/error/crit) error_log /var/log/nginx/error.log warn; # PID 文件路径 pid /var/run/nginx.pid; events { # 单个工作进程的最大连接数 worker_connections 1024; # 多路复用模型,Linux 推荐 epoll use epoll; }

二、 静态资源服务配置

用于部署前端静态文件(Vue/React 打包产物),优化访问性能。

http { include mime.types; default_type application/octet-stream; # 开启高效文件传输模式 sendfile on; # 长连接超时时间 keepalive_timeout 65; # 开启 gzip 压缩,减小传输体积 gzip on; gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; server { listen 80; server_name localhost; # 静态资源根目录 root /usr/share/nginx/html; index index.html index.htm; location / { # 解决前端路由刷新 404 问题(SPA 应用必备) try_files $uri $uri/ /index.html; } # 静态资源缓存策略,图片/JS/CSS 缓存 30 天 location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { expires 30d; add_header Cache-Control "public, max-age=2592000"; } } }

三、 反向代理配置(代理 Java 后端服务)

将前端请求转发到后端 Spring Boot/Tomcat 服务,解决跨域和端口暴露问题。

http { server { listen 80; server_name api.example.com; location /api/ { # 后端服务地址 proxy_pass http://127.0.0.1:8080/; # 传递真实客户端 IP 给后端 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 反向代理超时时间 proxy_connect_timeout 60s; proxy_read_timeout 60s; } } }

四、 负载均衡配置

分发请求到多个后端实例,提升系统可用性和并发能力。

http { # 定义后端服务集群 upstream backend_cluster { # 策略1:轮询(默认) server 192.168.1.101:8080 weight=1; server 192.168.1.102:8080 weight=2; # weight 越大,权重越高 # 策略2:ip_hash(会话粘滞,同一IP固定到同一实例) # ip_hash; # 策略3:fair(按后端响应时间分配,需额外模块) # fair; } server { listen 80; server_name www.example.com; location / { proxy_pass http://backend_cluster; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } }

五、 HTTPS 配置(HTTP 转 HTTPS)

配置 SSL 证书,实现加密传输。

http { server { listen 80; server_name example.com; # HTTP 强制跳转 HTTPS return 301 https://$host$request_uri; } server { listen 443 ssl http2; server_name example.com; # SSL 证书路径 ssl_certificate /etc/nginx/ssl/example.crt; ssl_certificate_key /etc/nginx/ssl/example.key; # 安全的 SSL 协议版本 ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location / { root /usr/share/nginx/html; index index.html index.htm; } } }

六、 限流配置(防止恶意请求)

限制单位时间内的请求数,保护后端服务。

http { # 定义限流规则:基于 IP 限流,10r/s(每秒10个请求),缓冲区 20 个请求 limit_req_zone $binary_remote_addr zone=limit_zone:10m rate=10r/s; server { listen 80; server_name example.com; location / { # 应用限流规则,burst 突发请求数,nodelay 不延迟处理 limit_req zone=limit_zone burst=20 nodelay; proxy_pass http://backend_cluster; } } }

七、 关键配置检查与重载

# 检查配置语法是否正确 nginx -t # 平滑重载配置(不中断服务) nginx -s reload
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 0:28:40

定时器插座(有完整资料)

资料查找方式:特纳斯电子(电子校园网):搜索下面编号即可编号:HJJ-32-2021-017设计简介:本设计是基于单片机的定时插座控制系统,主要实现以下功能:DS1302计时,且可通过按键…

作者头像 李华
网站建设 2026/4/18 0:25:17

空气质量监测--视频(有完整资料)

资料查找方式:特纳斯电子(电子校园网):搜索下面编号即可编号:HJJ-32-2021-018设计简介:本设计是基于单片机的空气质量监测,主要实现以下功能:可实现LCD1602显示DS1302时间以及空气质…

作者头像 李华
网站建设 2026/4/18 0:30:54

问题三:GraphRAG的研究现状、实例演示

截至2026年初,GraphRAG(基于图的检索增强生成)已成为人工智能领域最受关注的前沿技术之一。它通过将知识图谱(KG)与大语言模型(LLM)深度融合,显著提升了复杂问题理解、多跳推理和事实…

作者头像 李华
网站建设 2026/4/18 0:30:54

COVLM-RL:利用VLM引导强化学习实现自动驾驶的关键面向对象推理

端到端自动驾驶框架在泛化能力、训练效率和可解释性方面长期面临挑战。 现有方法虽利用视觉语言模型通过大规模数据集监督学习来提升推理能力,但在新场景中往往缺乏鲁棒性;而基于强化学习的方法虽增强了适应性,却存在数据效率低下和决策过程不…

作者头像 李华
网站建设 2026/4/18 0:30:02

thinkphp+vue电信用户行为分析系统 可视化统计系统

目录 系统概述技术架构核心功能应用价值部署要求 项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理 系统概述 ThinkPHPVue电信用户行为分析系统是一个基于Web的数据可视化平台,整合后端ThinkPHP框架与前端Vue.js技术,实现对…

作者头像 李华