Forum Discussion
David_Tumlin
Nimbostratus
Sep 30, 2010Another ProxyPass question
I am using the ProxyPass iRule (v10) to perform reverse proxy for an SAP portal. The developers want the site to have a single host name exposed to the Internet, but have multiple server pools on the backside (i.e. www.customer.com/crm and www.customer.com/prt on Internet mapped to crm.customer.net and portal.customer.net on internal network.) The portal pages contain links to multiple internal hosts that need to be rewritten (via STREAM command). The ProxyPass rule seems to only rewrite the hosts called in a previous request, not all of them.
My question is: is there a more elegant approach to this than entering all combinations in the STREAM::expression command (STREAM::expression \"@$host_serverside$path_serverside@$host_clientside$path_clientside@ @portal.customer.net@www.customer.com/prt/@ @crm.customer.net@www.customer.com/crm/@\ ). I currently have around 20 rewrites per portal with potential for more. This modification works, but requires administrators to edit the iRule and data group when hosts change.
Any suggestions would be appreciated.
1 Reply
- hoolio
Cirrostratus
Hi David,
One way to make that slightly more user-friendly would be to parse the datagroup host entries into a static:: variable in RULE_INIT and then use that variable in the STREAM::expression command. This would require the admins to modify the RULE_INIT event and save the iRule when they update the datagroup though. The RULE_INIT change could be adding or removing a blank line so that RULE_INIT is re-run.
Aaron
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects