首页 > 解决方案 > Azure:将来自不同子域和 URL 的流量路由到不同的后端端口

问题描述

我在 Azure 的同一台机器上的不同端口上托管了多个站点:

contoso.com:8000
contoso.com:8001
contoso.com:8002
contoso.com:8003 

和托管在不同机器上的单个站点:

foo.com:8000
foo2.com:8000

我想使用反向代理通过不同的 URL 和不同的子域来解决这些问题;

w1.fabrikam.com/I1 -> contoso.com:8000
w1.fabrikam.com/I2 -> contoso.com:8001
w2.fabrikam.com -> foo.com:8000
w3.fabrikam.com -> foo2.com:8000

有一个与此类似的帖子得到了回答,但仅使用了子域。是否可以在应用程序网关中使用子域以及 URL 规则?

Azure:将子域流量路由到不同的后端端口

标签: azureazure-application-gatewayazure-traffic-managerazure-front-door

解决方案


要将不同的子域寻址到不同的后端,您可以为每个后端配置多站点侦听器:

w2.fabrikam.com -> foo.com:8000
w3.fabrikam.com -> foo2.com:8000

为此,您可以创建两个后端池,并创建两个多主机侦听器。

您可以参考 https://docs.microsoft.com/en-us/azure/application-gateway/multiple-site-overviewhttps://docs.microsoft.com/en-us/azure/application-gateway/创建多站点门户

要通过不同的 URL 解决这些问题,您可以配置基于路径的路由规则。

w1.fabrikam.com/I1 -> contoso.com:8000
w1.fabrikam.com/I2 -> contoso.com:8001

对于Path-based routing,选择Add multiple targets to create a path-based rule。对于Path,键入/I1/*/I2/*

对于 HTTP 设置,创建两个 HTTP 设置,选择后端端口80008001为每个 HTTP 设置。

您可以参考https://docs.microsoft.com/en-us/azure/application-gateway/create-url-route-portal


推荐阅读