入口会话 Cookie 路径在入口会话 Cookie 中设置常规快速;导致用户注销



我创建了一个具有以下路径定义的入口控制器配置:

paths:
- path: (USA)/my-app/(.*)$
...............
- path: (UK)/my-app/(.*)$

这里发生的问题是当我没有设置以下注释时;

nginx.ingress.kubernetes.io/session-cookie-path

我在入口cookie路径中得到正则表达式为:

cookie-name: INGRESSCOOKIE --------cookie-path: /(USA)/my-app/(.*)$

这是来自给定的路径,即/(USA(/my-app/(.*($。

因此,来自入口的此响应 Cookie 不会返回到入口,以用于任何后续 http://USA/my-app/?id=1 请求。(因为 HTTP 请求路径与 INGRESSCOOKIE 中的路径不同(

由于此HTTP请求有时会命中不同的上游服务器并且用户注销;因为请求中的会话ID是由通过同一负载平衡器管理的不同服务器生成的。

然后我尝试将注释设置为:

nginx.ingress.kubernetes.io/session-cookie-path= /$1/my-app

但是 $1 实际上并没有在这里解决;可能我们不能在会话 cookie 路径中给出表达式。

我在这里有什么不对的地方吗?或者,我应该尝试其他方法来实现会话亲和力。

谢谢

我知道这已经很老了,但无论如何都想分享我的观点。

对于您的问题,您可能需要尝试以下注释:nginx.ingress.kubernetes.io/use-regex

请从注释中删除"会话cookie路径",因为会话cookie路径不支持正则表达式

欲了解更多信息,请访问以下链接:

https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#use-regex https://kubernetes.github.io/ingress-nginx/user-guide/ingress-path-matching/https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#cookie-affinity

相关内容

  • 没有找到相关文章

最新更新