For more information regarding the security incident at F5, the actions we are taking to address it, and our ongoing efforts to protect our customers, click here.

Forum Discussion

cymru81's avatar
cymru81
Icon for Altocumulus rankAltocumulus
Dec 01, 2020

irule uri redirect help

Hi Im looking for help with an irule to achieve the following:

 

if someone visits https://www.site.com/abc/def or https://www.site.com/abc/def/ it redirects them to https://www.domain.com - we have the following irule in place but it doesnt capture the second uri with trailing '/' https://www.site.com/abc/def/

 

when HTTP_REQUEST {

 if { ([HTTP::host] equals "www.site.com") and ([HTTP::path] ends_with "/abc/def") } {

  HTTP::redirect https://www.domain.com

 }

}

 

Any help appreciated!

7 Replies

  • Hi cymru81,

    You should use starts_with instead of ends_with.

    When using starts_with, /abc/def/x path matches with condition.

    If you don't want redirect for /abc/def/x, you can use this iRule:

    when HTTP_REQUEST {
    	if { [HTTP::host] equals "www.site.com" } {
    		switch [HTTP::path] {
    			"/abc/def" -
    			"/abc/def/" { HTTP::redirect https://www.domain.com }
    		}
    	}
    }
    • cymru81's avatar
      cymru81
      Icon for Altocumulus rankAltocumulus

      Hi eaa

       

      Thanks for responding, unfortunately that still doesnt work when changing to starts_with

       

      We still want visitors to be able to navigate to /abc/ but with this irule applied its redirecting them to www.domain.com ?