Forum Discussion

Kevin_Nail's avatar
Kevin_Nail
Icon for Nimbostratus rankNimbostratus
Jun 23, 2016

Need help stripping out certain characters in the URI

Trying to develop an iRule to remove "<' ">" characters from a URI

 

I wrote a very simple iRule to accomplish this but what I see in the log is not what is being sent in the browser. for Example my irule is this:

 

when HTTP_REQUEST { log local0. "Incoming URI = [HTTP::uri]" set uri [string map -nocase {"<" "<"} [HTTP::uri]] log local0. "New URI = $uri" }

 

I am sending this in my browser and yes I know it will not work but it does log for me: http://10.9.49.155/<>oam/server

 

What I see in the log is this:

 

Jun 23 15:31:31 slot2/xxxxxxx info tmm[12824]: Rule /Common/convert_rule : Incoming URI = /%3C%3Eoam/server

 

so my irule never sees the "<"

 

Is the LTM deconding/encoding this string before I see it in the log? How can I get this to work?

 

Thanks, Kevin

 

2 Replies

  • See if this link helps in formulating your iRule. Basically, you may have to implement encoding/decoding.

     

  • Hi,

    You have to decode the URI like below :

    when HTTP_REQUEST { 
        log local0. "Incoming URI = [HTTP::uri]" 
        set uri [URI::decode [HTTP::uri]]
        log local0. "New URI = $uri" 
    }