Forum Discussion
redirect to a pool for multiple uri
I have multiple sites and each site uses multiple uri's , so i need to redirect to a particular pool based on the uri's .Like if its /index.html or /benefits or /analytics -> it should direct the traffic to service on port 9797 .
will the below work ?
when HTTP_REQUEST {
log local0. "BI request received" if { [HTTP::path] equals "/index.html" || [HTTP::path] equals "/benefits" || [HTTP::path] equals "analytics" || [HTTP::path] equals "/bicomposer"} { log local0. "BI request for BI service received. Selecting end server" pool OHS_BI_9797 log local0. "BI end server selected: [IP::server_addr]" }
There are other pools also to be redirect to based on to other uri's which i could mention as an else statement ?
18 Replies
- kunjan
Nimbostratus
Yes, you can do that provided the logic is correct
when HTTP_REQUEST { log local0. "BI request received" if { [HTTP::path] equals "/index.html" || [HTTP::path] equals "/benefits" || [HTTP::path] equals "analytics" || [HTTP::path] equals "/bicomposer" } { log local0. "BI request for BI service received. Selecting end server" pool OHS_BI_9797 log local0. "BI end server selected: [IP::server_addr]" } elseif { [HTTP::path] equals "xxx" } { pool XXXXX } }- draco
Nimbostratus
Hey Kunjan
Can you see any error in this code ?
when HTTP_REQUEST { switch -glob [HTTP::uri] { "/index.html" - "/benefits/*" - "/analytics/*" - "/xmlpserver/*" - "/ui" - "/mapviewer/*" - "/bicomposer" - "/bisearch/*" - "/console/*" - "/biacm/*" - "/bimiddleware/*" - { / URI b URI pool URI_b_pool } default { non-/site a URI pool URI_default_pool } } } - Jinshu
Cirrus
It would be easy to read if you can format (select the irule and Ctrl+K) this irule, Divya.
-Jinshu
- draco
Nimbostratus
when HTTP_REQUEST { switch -glob [HTTP::uri] { "/index.html" - "/benefits/*" - "/analytics/*" - "/xmlpserver/*" - "/ui*" - "/mapviewer/*" - "/bicomposer*" - "/bisearch/*" - "/console/*" - "/biacm/*" - "/bimiddleware/*" - { / URI b URI pool URI_b_pool } default { non-/site a URI pool URI_default_pool } } } sorry, didnt see that...i get error at 'default'
- kunjan_118660
Cumulonimbus
Yes, you can do that provided the logic is correct
when HTTP_REQUEST { log local0. "BI request received" if { [HTTP::path] equals "/index.html" || [HTTP::path] equals "/benefits" || [HTTP::path] equals "analytics" || [HTTP::path] equals "/bicomposer" } { log local0. "BI request for BI service received. Selecting end server" pool OHS_BI_9797 log local0. "BI end server selected: [IP::server_addr]" } elseif { [HTTP::path] equals "xxx" } { pool XXXXX } }- draco
Nimbostratus
Hey Kunjan
Can you see any error in this code ?
when HTTP_REQUEST { switch -glob [HTTP::uri] { "/index.html" - "/benefits/*" - "/analytics/*" - "/xmlpserver/*" - "/ui" - "/mapviewer/*" - "/bicomposer" - "/bisearch/*" - "/console/*" - "/biacm/*" - "/bimiddleware/*" - { / URI b URI pool URI_b_pool } default { non-/site a URI pool URI_default_pool } } } - Jinshu
Cirrus
It would be easy to read if you can format (select the irule and Ctrl+K) this irule, Divya.
-Jinshu
- draco
Nimbostratus
when HTTP_REQUEST { switch -glob [HTTP::uri] { "/index.html" - "/benefits/*" - "/analytics/*" - "/xmlpserver/*" - "/ui*" - "/mapviewer/*" - "/bicomposer*" - "/bisearch/*" - "/console/*" - "/biacm/*" - "/bimiddleware/*" - { / URI b URI pool URI_b_pool } default { non-/site a URI pool URI_default_pool } } } sorry, didnt see that...i get error at 'default'
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
* 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