On 05/04/13 20:52, Willy Tarreau wrote:
> Hi Hugo,
> No, the use-server rule should work. There might be something else or
> even a bug.
>
> Did you ensure to use the inspect delay to wait for the data to come ?
>
> Willy
>
>
Hello Willy,
To begin with, I forgot to mention that we're on 1.5.d18.
We use inspect-delay for something else (that works), as shown below:
backend xmpp-tcp
mode tcp
source x.x.x.x
option tcplog
timeout tunnel 70000
server livefire y.y.y.y:5222 check inter 10s
server stagingfire z.z.z.z:5222 check inter 10s
acl valid_xmpp_client payload(0,5) <?xml
acl xmpp_to_live payload(0,500) -i to=g
acl xmpp_to_staging payload(0,500) -i to=s
tcp-request inspect-delay 7s
tcp-request content reject unless valid_xmpp_client
use-server livefire if xmpp_to_live
use-server stagingfire if xmpp_to_staging
We've tried variations of -m sub, -m reg, and commenting out the
valid_xmpp_client check in order to just send LIVE or STAGING (adapting
the xmpp_to* acls) and match that exactly but it didn't work either, and
that's when we thought this is the wrong way to go about it.