我们如何根据 cookie 状态将 Haproxy 配置为基于 cookie 的负载平衡器?即如果 cookie 不存在则重定向到 server1 & 如果 cookie 存在则 server2?
我搜索这个然后我得到 ACL,但它是用于 Header,我们可以将它配置为 cookie 存在吗?
提前致谢。
我们如何根据 cookie 状态将 Haproxy 配置为基于 cookie 的负载平衡器?即如果 cookie 不存在则重定向到 server1 & 如果 cookie 存在则 server2?
我搜索这个然后我得到 ACL,但它是用于 Header,我们可以将它配置为 cookie 存在吗?
提前致谢。
下面是我如何检查 cookie “fslanguage” 的值并根据语言在请求中设置 Accept-Language 标头。您可以轻松地执行后端规则(请参阅 use_backend)而不是 reqrep 规则。
acl langCookie_en cook(fslanguage) en
reqrep Accept-Language:\ (.*) Accept-Language:\ en,\1 if langCookie_en
acl langCookie_fr cook(fslanguage) fr
reqrep Accept-Language:\ (.*) Accept-Language:\ fr,\1 if langCookie_fr
acl langCookie_de cook(fslanguage) de
reqrep Accept-Language:\ (.*) Accept-Language:\ de,\1 if langCookie_de
acl langCookie_es cook(fslanguage) es
reqrep Accept-Language:\ (.*) Accept-Language:\ es,\1 if langCookie_es
acl langCookie_pt cook(fslanguage) pt
reqrep Accept-Language:\ (.*) Accept-Language:\ pt,\1 if langCookie_pt
acl langCookie_it cook(fslanguage) it
reqrep Accept-Language:\ (.*) Accept-Language:\ it,\1 if langCookie_it
acl langCookie_ru cook(fslanguage) ru
reqrep Accept-Language:\ (.*) Accept-Language:\ ru,\1 if langCookie_ru
acl langCookie_ja cook(fslanguage) ja
reqrep Accept-Language:\ (.*) Accept-Language:\ ja,\1 if langCookie_ja
acl langCookie_ko cook(fslanguage) ko
reqrep Accept-Language:\ (.*) Accept-Language:\ ko,\1 if langCookie_ko
acl langCookie_zh cook(fslanguage) zh
reqrep Accept-Language:\ (.*) Accept-Language:\ zh,\1 if langCookie_zh