Mat*_*nja 3 nginx proxy reverse-proxy load-balancing linux-networking
基本上我有一个 API 农场
192.168.1.1、192.168.1.2、192.168.1.3
但是,端点具有不同的文件夹结构(我无法修改的第 3 方!)
所以基本上我想要一个像这样的 nginx 配置
upsteam api_servers{
server 192.168.1.1/api/;
server 192.168.1.2/myApp/api/;
server 192.168.1.3/;
}
server{
listen 80;
location / {
proxy_pass http://api_servers;
}
}
Run Code Online (Sandbox Code Playgroud)
但是,您不能在上游服务器中拥有路径。我想我必须重写这些?我知道如何为传入的请求重写它,但不确定当它到达每个后端服务器时如何以不同的方式重写它。
提前谢谢了!!
有一个解决方法。想法是为每个上游制作一个代理服务器块。
upsteam api_servers {
server 127.0.1.1;
server 127.0.1.2;
server 192.168.1.3;
}
server {
listen 127.0.1.1;
location / {
proxy_pass http://192.168.1.1/api/;
}
}
server {
listen 127.0.1.2;
location / {
proxy_pass http://192.168.1.2/myApp/api/;
}
}
server {
listen 80;
location / {
proxy_pass http://api_servers;
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4829 次 |
最近记录: |