haproxy 基于cookie的会话保持
cookie value:为当前server指定cookie值,实现基于cookie的会话黏性
cookie 语法
cookie <name> [ rewrite | insert | prefix ] [ indirect ] [ nocache ]
[ postonly ] [ preserve ] [ httponly ] [ secure ]
[ domain <domain> ]* [ maxidle <idle> ] [ maxlife <life> ]
[ dynamic ] [ attr <value> ]*
name:cookie 的key名称,用于实现持久连接
insert:如果没有就插入新的cookie
indirect:不会向客户端发送服务器已经处理过请求的cookie信息
nocache:当client和hapoxy之间有缓存时,不缓存cookie
cookie 的作用域
defaults | frontend | listen | backend |
---|---|---|---|
yes | no | yes | yes |
cookie 配置示例
listen web_host
bind 192.168.1.101:80
mode http
log global
balance roundrobin
cookie SERVER-COOKIE insert indirect nocache
server web1 192.168.1.103:80 cookie web1 check inter 3000 fall 3 rise 5
server web2 192.168.1.104:80 cookie web2 check inter 3000 fall 3 rise 5
验证cookie信息
通过命令验证
root@z5:~# curl 192.168.1.101 --cookie "SERVER-COOKIE=web1"
103 index
root@z5:~# curl 192.168.1.101 --cookie "SERVER-COOKIE=web2"
104 index
–cookie “SERVER-COOKIE=web2”
104 index