Seems many problems,
1. why disable set context variable ${requestHost} -- you will not be able to translate request host to the target host
2. /portal is not correct, /portal* or /portal/*, otherwise the gateway only accept /portal uri
3. since you add /portal in gateway uri, you need to remove it before route to target server, and add it back after get response from target server, ie. the default template is only good for /* (then the gateway will be a dedicate reverse proxy), you need to manually handle the uri you add.
Here is how reverse proxy work, we translate the gateway host to target host (using regex assertion) in anywhere of the request message (query, headers, payload, cookies, etc.), then call target server with translated request message, after get response, we translate all the target host in anywhere of the response message back to gateway host.