Azure 应用程序网关 - 基于 cookie 值的路由

Azure application gateway - Routing based on cookie value

我在 Internet 上可以找到的所有示例都主要讨论基于路径的路由。我有一个场景,我需要读取一个 cookie 并基于该 cookie,将请求路由到特定的后端池。理想情况下,如果可以读取 cookie 值然后重定向到具有相同名称的后端池,那就太好了。但我不确定这是否有可能。那么,有人知道是否可以基于 cookie 值进行路由吗?

"Cookie based routing is not possible with Application Gateway as of today."

此声明是2019年7月的,所以可能有新的发展。

https://social.msdn.microsoft.com/Forums/en-US/256d36b1-d6f0-4f59-be04-b7b71308739e/node-selection-through-application-gateway?forum=WAVirtualMachinesVirtualNetwork

新进展。 V2 有一些可以使用的功能。看: https://docs.microsoft.com/en-us/azure/application-gateway/rewrite-http-headers-url#parameter-based-path-selection

基于 cookie 值的路由

Default path -> /* -> Default pool
Path 1 -> /webappA/ -> Web App A pool
Path 2-> /webappB/ -> Web App B pool

然后,URL重写配置即可,

Condition – If COOKIEX=1, rewrite URL path to /webappA/
Condition – If COOKIEX=0, rewrite URL path to /webappB/
Re-evaluate path map = enabled