ToolkitX
知识库工具箱

反向代理配置

proxy_pass、负载均衡、健康检查

25min·进阶

01. 反向代理配置

反向代理是 Nginx 最常用的功能之一,将客户端请求转发到后端服务器。
nginx
# 基本反向代理
server {
listen 80;
server_name api.example.com;

location / {
    proxy_pass http://127.0.0.1:3000;
    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_set_header X-Forwarded-Proto $scheme;
}
}

# WebSocket 代理
location /ws {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}

02. 负载均衡

nginx
# 定义上游服务器组
upstream backend {
server 192.168.1.10:3000 weight=3;
server 192.168.1.11:3000 weight=2;
server 192.168.1.12:3000 weight=1;

# 健康检查
keepalive 32;
}

# 负载均衡算法
upstream backend {
# 轮询(默认)
server 192.168.1.10:3000;
server 192.168.1.11:3000;

# IP Hash(会话保持)
ip_hash;

# 最少连接
least_conn;
}

server {
listen 80;
location / {
    proxy_pass http://backend;
}
}

知识测验

1/4正确 0

Nginx 负载均衡中 ip_hash 的作用是?

下一节

HTTPS 配置

下一节