Should a use_backend followed by redirect work?

I am having
acl isurl path_beg /path1/path2/

use_backend isurlsrv if isurl
redirect scheme https code 301 if !{ ssl_fc }

But looks like everything is being redirected

This is expected behavior. The sequence of configuration directives is only relevant for the same kind of directive.