No need to reply to this mail, I have already processed it in private.

Willy

On Sat, May 02, 2009 at 12:43:20AM +0400, Alexey Pechnikov wrote:
> Hello!
> 
> HAProxy is work incorrect with application cookie. I have main server to 
> setup 
> "serverid" cookie for all clients by custom algorithm. But HAProxy do delete 
> or replace this cookie always! There are a lot of applications with custom 
> client or server cookie-based balance algorithms and so HAProxy must read and 
> save these. I did read code of "manage_server_side_cookies" function but I 
> can't fix it now. 
> 
> As example:
> cookie serverid
> appsession session len 32 timeout 3h
> 
> server main  127.0.0.1:8000 check
> server work1  127.0.0.1:8001 cookie work1
> server work2  127.0.0.1:8002 cookie work2
> ...
> 
> When "serverid" cookie is not find is needed to use server "main". But after 
> cookie "serverid=work1" inserted by client or application is needed to use 
> server "work1". I did try define "serverid" as appsession cookie (really my 
> appsession cookie is other and as you can see above it's "session" cookie) 
> but 
> in "manage_server_side_cookies" function appsession is checked after! So it's 
> impossible to create work configuration.
> 
> I have equal Pound configuration and it's work fine:
> 
>     Service                                            
>         HeadRequire "Host:.*mydomain.ru.*"
>         HeadRequire "Cookie: .*serverid=work1"      
>         BackEnd                                        
>             Address 127.0.0.1                          
>             Port    8001                               
>         End                                            
>     End                                                
>     Service                                            
>         HeadRequire "Host:.*mydomain.ru.*"
>         HeadRequire "Cookie: .*serverid=work2"          
>         BackEnd                                        
>             Address 127.0.0.1                          
>             Port    8002                               
>         End                                            
>     End                                                
> 
>    ...
> 
>     Service                                                    
>         HeadRequire "Host:.*mydomain.ru.*"
>         BackEnd                                        
>             Address 127.0.0.1
>             Port    8000
>         End
>     End
> 
> Can any help me to fix the problem?
> 
> Best regards, Alexey Pechnikov.
> http://pechnikov.tel/

Reply via email to