I'm trying to redirect a url that looks like http://host/api/getThingByID/12345 to http://host/api/addr/12345/getThing
Unfortunately, regsub() does not support capture groups. I was going to try to work around this by just calling it twice, once to rewrite the url up to the id, and then again to replace /$
with /getThing
, but I can't figure out how to call the function twice in one redirect rule.
Best Answer
After much experimentation, I came up with a solution. You can just chain regsub() back to back, with a rule like:
http-request redirect code 301 location %[url,regsub(^/api/getThingByAddr,/api/addr/,),regsub($,/getThing,)] if { path_beg /api/getThingByAddr }