OK, try this, I've just added some logging, made the URI lowercase everywhere and reduced the size of the switch;
when HTTP_REQUEST {
set originaluri [string tolower [HTTP::uri]]
switch -glob [string tolower [HTTP::uri]] {
"/cm/" {
set SELECTED_POOL "LPAGE_ALERTAS"
}
"/delivery/imanager" -
"/delivery/wifi" {
set newuri [findstr $originaluri "/delivery" 9]
HTTP::uri $newuri
set SELECTED_POOL "LPAGE_DELIVERY_CMP"
log local0. "Rewriting URI from $originaluri to $newuri"
}
"/delivery" {
set SELECTED_POOL "LPAGE_DELIVERY_CMP"
}
default {
HTTP::respond 403
log local0. "No URI match, sending a 403 response"
}
}
}