2013-03-01 67 views
0

根據Cookie狀態,我們如何將Haproxy配置爲基於Cookie的Load-Balacer?即如果cookie不存在,則如果存在cookie,則重定向到服務器1 &然後server2?具有ACL的Hyproxy負載均衡器

我搜索這個,然後我得到的ACL,但它是頭,我們可以配置它的cookie存在?

在此先感謝。

回答

0

以下是我如何檢查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