cancel
Showing results for 
Search instead for 
Did you mean: 

redirect with variable uri

VS
Nimbostratus
Nimbostratus

Hi,

 

Newbie to F5 working on my first irule and already stuck. I have an irule similar to below which works. But now need to modify it with part of the URI "123456" being variable and redirected to the corresponding value. Any suggestions would be greatly appreciated!

 

 

when HTTP_REQUEST {

if { ([HTTP::host] contains "website1") and ([string tolower [HTTP::uri]] starts_with "/test1/download/?uri=123456&t=record&lang=ln_english&mbd=false") } {

HTTP::redirect ""http://website2.com/test/Record/123456/File/Document""

}

else { pool POOL1 }

}

 

1 ACCEPTED SOLUTION

Hello VS.

 

Try this.

when HTTP_REQUEST { set uri_param [URI::query [HTTP::uri] uri] if { ([HTTP::host] contains "website1") and ([string tolower [HTTP::uri]] starts_with "/hptrimwebclient/download/") } { HTTP::redirect "http://website2.com/CS/HPRMServiceApi/Record/$uri_param/File/Document" } else { pool POOL1 } }

Regards,

Dario.

Regards,
Dario.

View solution in original post

4 REPLIES 4

Hello VS.

 

You need to clarify better what you want to achieve.

Some example would be nice.

 

Regards,

Dario.

Regards,
Dario.

Hi Dario!

 

I am trying to redirect :

http://website1/hptrimwebclient/download/?uri=123456&t=record&lang=ln_english&mbd=false

 

to:

http://website2.com/CS/HPRMServiceApi/Record/123456/File/Document

 

However 123456 above is a variable number and would need to be redirected to the corresponding URL with the same number. So that if the above example changes to:

http://website1/hptrimwebclient/download/?uri=987654&t=record&lang=ln_english&mbd=false

 

Then it would get redirected to:

http://website2.com/CS/HPRMServiceApi/Record/987654/File/Document

 

Thank you! 

Hello VS.

 

Try this.

when HTTP_REQUEST { set uri_param [URI::query [HTTP::uri] uri] if { ([HTTP::host] contains "website1") and ([string tolower [HTTP::uri]] starts_with "/hptrimwebclient/download/") } { HTTP::redirect "http://website2.com/CS/HPRMServiceApi/Record/$uri_param/File/Document" } else { pool POOL1 } }

Regards,

Dario.

Regards,
Dario.

VS
Nimbostratus
Nimbostratus

Hi Dario,

 

The above works great! Thanks so much for the help!