如何在HAProxy中保存cookie?

如何在HAProxy中保存cookie?

我们当前有以下设置:

[Client] -> [haproxy] -> [Nginx] -> [App Servers]

Nginx 当前通过设置 cookie 即来设置与应用服务器的 cookie 亲和性:public-client。但是,随着 HAProxy 的引入,客户端不再存在 cookie,与应用服务器的会话亲和性被破坏。

我在阅读文档时发现了一个名为应用会话这可能有用,但看起来已被弃用。建议使用棍棒桌但我不太清楚如何保存具有该属性的 cookie。

有谁知道如何实现这一点?

笔记:我完全了解反向代理的重复,但我们的架构需要它。

发现问题

因此,根据下面的评论,我tcdump在 HAProxy 和 Nginx 服务器上运行以验证 cookie 未设置/传递的位置。

我运行的命令供参考:

sudo /usr/sbin/tcpdump -A -l dst port 80 -i any | grep "^Cookie: "

这显示了 HAProxy 和 Nginx 服务器上的应用程序 cookie。但是,Nginx 应该设置的 cookie 不在流向 HAProxy 的流量中,这导致问题归咎于 Nginx 未设置 cookie。

相关内容