The HTTP::redirect command immediately sends the redirect response to the client. You can't set a pool after issuing this command. You are sending the client back through your loadbalancer on a new request.
Also, if $uri = [HTTP:uri], then you will be in a redirect loop since you are not altering the client request when you redirect them. If $uri != [HTTP::uri], then you need an "elseif" clause that catches the new request and uses pool cjj1.
So, like this:
when HTTP_REQUEST {
if { $uri starts_with "/help/" } {
HTTP::redirect "http://[HTTP::host][HTTP::uri]"
}
elseif { some new condition that matches your redirected request } {
pool cjj1
}
else {
pool cjj2
}
}
I haven't used "return" so I won't advise on its use.
Richard