Nginx通过二级目录映射不同的反向代理
# 需求
同一个域名需要反向代理到不同的服务器,比如:
用户访问 xxx.com/index
需要代理到10.10.4.100
和10.10.4.101
这两台服务器上
用户访问 xxx.com/admin
需要代理到10.10.4.200
和10.10.4.201
这两台服务器上
# 实现
Nginx 主要的作用就是反向代理和负载均衡了
server {
listen 80;
server_name xxx.com;
#通过访问index二级目录来访问网站前台
location /index/ {
#Index后面的斜杠是一个关键,没有斜杠的话就会传递service到后端节点导致404
proxy_pass http://Index/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
#通过访问admin二级目录来访问网站后台
location /admin/ {
proxy_pass http://Admin/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
#简单的负载均衡节点配置
upstream Index {
server 10.10.4.100;
server 10.10.4.101;
ip_hash;
}
upstream Admin {
server 10.10.4.200;
server 10.10.4.201;
ip_hash;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
上次更新: 2024/02/20, 17:31:36
- 02
- Node与GLIBC_2.27不兼容解决方案08-19
- 03
- Git清空本地文件跟踪缓存08-13