Nginx第7层请求路由

问题描述 投票:0回答:1

因此,我正在尝试根据使用docker和Nginx的请求路由到3个不同的容器。容器具有相同的IP和不同的端口。这是Nginx配置:

upstream helpdesk{
    server 10.10.10.20:8089;
}

upstream dsi_helpdesk{
    server 10.10.10.20:8088;
}

upstream drh_helpdesk{
    server 10.10.10.20:8090;
}

server {

    listen       80;
    server_name  myticket.grgsh.com;


    location / {
        proxy_set_header Host $host;
        proxy_pass http://helpdesk;
    }

    location /dsi {
        proxy_set_header Host $host;
        proxy_pass http://dsi_helpdesk;
    }

    location /drh {
        proxy_set_header Host $host;
        proxy_pass http://drh_helpdesk;
    }

}

当我导航到myticket.grgsh.com时,服务器将我重定向到上游帮助台,但是当我导航至myticket.grgsh.com/dsi或myticket.grgsh.com/drh时,出现错误:

找不到该服务器上找不到所请求的URL。

任何人都可以帮助解决此问题吗?谢谢。

docker nginx
1个回答
0
投票

解决方案是:

location /dsi {
    proxy_set_header Host $host;
    proxy_pass http://dsi_helpdesk;
}

需要这个

location /dsi/ {
    proxy_set_header Host $host;
    proxy_pass http://dsi_helpdesk/;
}
© www.soinside.com 2019 - 2024. All rights reserved.