I'd guess this is an issue with trying to send a redirect from both rules on the same request. /var/log/ltm should show a runtime TCl error about multiple redirect invocations. For example,
http://www.acbg.com/saleshub/ucc is going to match the first iRule check for a URI ending with /ucc and the second iRule check for /saleshub/ucc.
Hamish's suggestion of using a datagroup and the findclass command is a good one if you don't need to use wildcards. If you do need to use wildcards, you could use a switch statement instead of a datagroup and findclass or the if/elseif/else chain. It would be idea if you could combine the iRules into one to ensure that only one redirect is attempted per HTTP request.
switch -glob [string tolower [HTTP::uri]] {
"*/saleshub/ucc" {
HTTP::redirect "https://microsite.accenture.com/ACBG_SalesHub/solutions/Pages/Outsourcing.aspx"
}
"*/ucc" {
HTTP::redirect "https://microsite.accenture.com/ACBG/Solutions/UCandC/Pages/default.aspx"
}
default {
Take some default action
}
}
No matter what though, you'll need to pick which matches you want take priority for each URI stem (/saleshub/ucc or /ucc, etc).
Aaron