我的haproxy配置存在很大问题。我有网址:
http://domain.com/some-text/?9/3/90/custom/184/2256184/2.jpg<br>
目标是Haproxy应该始终在同一个网络服务器上发送具有相同ID(例如2256184)的URL。
我已经尝试过参数“balance uri depth 8”但它不起作用。有人知道如何解决问题吗?
我的haproxy 1.5配置:
global
log /dev/log local0 debug
chroot /var/lib/haproxy
user haproxy
group haproxy
daemon
maxconn 5000
defaults
log global
mode http
option httplog
option forwardfor
option http-server-close
option dontlognull
timeout connect 5s
timeout client 25s
timeout server 25s
frontend http-frontend
bind 0.0.0.0:80
mode http
maxconn 50000
default_backend webfarm
backend webfarm
mode http
balance uri depth 8
option forwardfor
hash-type consistent
server webmember01 192.168.10.22:80 weight 50 check
server webmember02 192.168.10.23:80 weight 50 check
答案 0 :(得分:0)
您的URL示例仅包含7个目录。 我猜HAProxy回退到默认的LB算法,这是圆形的。
巴普蒂斯特
答案 1 :(得分:0)
HAProxy默认情况下仅使用URL的左侧,如果您希望它使用整个URL(包括?
之后的部分),则需要提供whole
参数。< / p>
如果您的网址有?
,例如:
domain.com/some-text/?9/3/90/custom/184/2256184/2.jpg
您需要使用此参数,因为在您的情况下,您感兴趣的是?
右侧的信息。
balance uri whole