应用程序网关 Url 路由到多个应用程序服务
Application Gateway Url Routing to multiple App Services
我有几个应用程序服务,我想使用应用程序网关位于前面并使用 URL 路由将流量路由到它们。例如:
- api1-应用程序服务
- api2-应用程序服务
- 网站 1-应用程序服务
我想使用前面带有自定义域的应用程序网关,并像这样路由流量:
- test.app.com/api/something -> api1-app-service
- test.app.com/api/different -> api2-app-service
- test.app.com/ -> website1-app-service
我设置了 3 个不同的后端池和一个 url 路由规则,如下所示:
rule1 | /api/something* | backendPool1
rule2 | /api/different* | backendPool2
default rule | backendPool3
我遇到的问题是这里的方向 (https://blogs.msdn.microsoft.com/waws/2017/11/21/setting-up-application-gateway-with-an-app-service-that-uses-azure-active-directory-authentication/) 说必须使用您指向应用程序网关的自定义域设置应用程序服务 (test.app。 com 在我的示例中),但我无法配置 test.app.com 以转到多个应用程序服务。我得到一个错误,主机名已经映射到另一个应用程序服务(这是真的,当试图映射到 api2-app-service test.app.com 被配置为 api1-app-service 时)。是否可以在多个应用程序服务之前设置一个应用程序网关?
可以在多个应用程序服务之前设置一个应用程序网关。
如果您想要自定义域与您的网络应用服务,您可以在不同的应用服务中配置不同的自定义域。也许,如果您想使用相同的自定义域,您可以在具有不同虚拟路径的相同 Web 应用程序服务中部署 multiple Applications。
如果您不想在多个应用服务中使用自定义域,您可以使用默认主机名 *.azurewebsites.net
。如果是这样,应用程序网关前端将根据不同的路由规则将客户端请求定向到不同的后端池。您可以使用 -PickHostNameFromBackendAddress
.
配置后端 HTTP 设置
参考:Hosting multiple sites in one Azure WebApp and create an application gateway with path-based routing rules.
经过一整天的研究,我相当确定仅使用应用程序网关和应用程序服务是不可能的。我打算将我的应用程序容器化,然后使用应用程序网关,看看它是否符合我的要求。
我有几个应用程序服务,我想使用应用程序网关位于前面并使用 URL 路由将流量路由到它们。例如:
- api1-应用程序服务
- api2-应用程序服务
- 网站 1-应用程序服务
我想使用前面带有自定义域的应用程序网关,并像这样路由流量:
- test.app.com/api/something -> api1-app-service
- test.app.com/api/different -> api2-app-service
- test.app.com/ -> website1-app-service
我设置了 3 个不同的后端池和一个 url 路由规则,如下所示:
rule1 | /api/something* | backendPool1
rule2 | /api/different* | backendPool2
default rule | backendPool3
我遇到的问题是这里的方向 (https://blogs.msdn.microsoft.com/waws/2017/11/21/setting-up-application-gateway-with-an-app-service-that-uses-azure-active-directory-authentication/) 说必须使用您指向应用程序网关的自定义域设置应用程序服务 (test.app。 com 在我的示例中),但我无法配置 test.app.com 以转到多个应用程序服务。我得到一个错误,主机名已经映射到另一个应用程序服务(这是真的,当试图映射到 api2-app-service test.app.com 被配置为 api1-app-service 时)。是否可以在多个应用程序服务之前设置一个应用程序网关?
可以在多个应用程序服务之前设置一个应用程序网关。
如果您想要自定义域与您的网络应用服务,您可以在不同的应用服务中配置不同的自定义域。也许,如果您想使用相同的自定义域,您可以在具有不同虚拟路径的相同 Web 应用程序服务中部署 multiple Applications。
如果您不想在多个应用服务中使用自定义域,您可以使用默认主机名 *.azurewebsites.net
。如果是这样,应用程序网关前端将根据不同的路由规则将客户端请求定向到不同的后端池。您可以使用 -PickHostNameFromBackendAddress
.
参考:Hosting multiple sites in one Azure WebApp and create an application gateway with path-based routing rules.
经过一整天的研究,我相当确定仅使用应用程序网关和应用程序服务是不可能的。我打算将我的应用程序容器化,然后使用应用程序网关,看看它是否符合我的要求。