Nginx是目前最流行的Web服务器和反向代理软件,以高性能、高并发、低资源占用著称。2026年Nginx已经成为网站部署的标准配置,无论是VPS、云服务器还是独立服务器,Nginx都是首选。本文将详细讲解Nginx反向代理和负载均衡的实战配置,帮你提升网站性能和稳定性。
一、Nginx反向代理基础
反向代理是Nginx最常用的功能之一。原理:用户请求先到Nginx,Nginx再转发到后端的应用服务器(如Tomcat、Node.js、PHP-FPM),后端处理完返回给Nginx,Nginx再返回给用户。好处:隐藏后端服务器真实IP,提升安全性;Nginx处理静态资源,后端只处理动态请求,提升性能;可以做负载均衡,多台后端分摊压力;统一管理SSL、压缩、缓存等。基本配置:location块中用proxy_pass指定后端地址,proxy_set_header设置转发头信息。反向代理是前后端分离、微服务架构的基础。
二、Nginx反向代理常用配置
反向代理常用配置项:proxy_pass后端地址,如http://127.0.0.1:8080;proxy_set_header Host $host传递域名;proxy_set_header X-Real-IP $remote_addr传递真实IP;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for传递IP链;proxy_connect_timeout连接超时,默认60秒;proxy_read_timeout读取超时;proxy_send_timeout发送超时;proxy_buffering开启缓冲,提升性能。WebSocket代理需要额外配置proxy_http_version 1.1和Upgrade头。合理配置超时和缓冲,能提升反向代理的稳定性和性能。
三、Nginx负载均衡配置
负载均衡是高并发网站的必备,Nginx支持多种负载均衡算法。轮询(默认):按顺序分配请求;weight权重:按权重分配,配置高的服务器分得多;ip_hash:按IP哈希分配,同一用户始终访问同一后端,解决session问题;least_conn:最少连接数优先;url_hash:按URL哈希分配(需第三方模块)。配置方法:upstream块定义后端服务器组,server指定后端地址和权重,proxy_pass指向upstream名称。示例:upstream backend { server 192.168.1.10:8080 weight=3; server 192.168.1.11:8080 weight=2; },然后proxy_pass http://backend。负载均衡能让多台VPS或云服务器协同工作,支撑更高并发。
四、Nginx健康检查
负载均衡需要健康检查,自动剔除故障服务器,保障可用性。Nginx开源版支持被动健康检查:max_fails设置失败次数,fail_timeout设置失败后暂停时间。示例:server 192.168.1.10:8080 max_fails=3 fail_timeout=30s,表示3次失败后暂停30秒。Nginx Plus商业版支持主动健康检查,定期探测后端状态。也可以用第三方模块nginx_upstream_check_module实现主动健康检查。健康检查能自动隔离故障节点,用户无感知,是高可用架构的重要组成部分。建议生产环境必须配置健康检查。
五、Nginx缓存配置
Nginx反向代理可以缓存后端响应,大幅提升性能。配置:proxy_cache_path设置缓存路径和参数,levels目录层级,keys_zone缓存区名称和大小,max_size最大缓存大小,inactive缓存过期时间。location中用proxy_cache指定缓存区,proxy_cache_valid设置不同状态码的缓存时间,proxy_cache_key设置缓存键。缓存能大幅减少后端请求,静态页面和接口都可以缓存。注意:动态内容、用户个性化内容不要缓存;设置合理的过期时间;提供缓存清除机制。Nginx缓存配合CDN,能让网站性能提升数倍。
六、Nginx性能优化和安全
Nginx性能优化:worker_processes设置为CPU核心数;worker_connections提高连接数,如10240;keepalive_timeout保持连接,减少握手;gzip压缩开启,减少传输量;静态资源缓存设置expires;open_file_cache缓存文件描述符。安全配置:限制请求频率limit_req_zone,防CC攻击;限制连接数limit_conn,防并发攻击;禁止访问敏感文件;隐藏Nginx版本号server_tokens off;配置WAF模块防SQL注入和XSS;SSL配置用TLS 1.2以上,禁用弱加密。Nginx配置好后用nginx -t测试语法,再reload重载。定期查看access.log和error.log,及时发现异常。
更多Nginx教程和服务器运维技巧,欢迎访问主机测评网zhujishang.com,我们持续更新VPS、云服务器、独立服务器的运维教程和选购指南,帮你打造高性能高可用的网站架构。




