Forum Discussion
irule based om http request.
I got a requirement as below :
When client hits abc-test-domain.com --- should get translated to dc-abc-test-domain1.com. Could someone give me the syntax please for irule.
14 Replies
- oguzy
Cirrostratus
Hi,
when HTTP_REQUEST { if { [string tolower [HTTP::host]] equals "abc-test-domain.com" } { HTTP::respond 301 "Location" "http://dc-abc-test-domain1.com" } }
- Abhijith_Subban
Nimbostratus
If, the listening and responding port is 8080 then during http response header. Can this be done :
when HTTP_REQUEST { if { [string tolower [HTTP::host]] equals "abc-test-domain.com" } { HTTP::respond 301 "Location" "[http://dc-test-domain1.com:8080 :8080"](http://dc-test-domain1.com:8080 :8080); } }
- oguzy
Cirrostratus
Yes, sure.
- THi
Nimbostratus
Just a note on the 301 redirect:
Instead of 301 Moved Permanently, I'd rather use 307 Temporary Redirect. Browsers may cache 301s indefinitely, and it may be difficult to remove the cache entry, if you need to modify the redirect location later on. Depending on browser, the 301 cache may persist over restarts..
Some may use 302 redirects, but 307 will also keep the original HTTP method (eg. GET, POST, HEAD), 302 may not.
So, I would try to avoid a 301 redirects, unless I were 100% sure of the need of permanently de-commissioning the old URL.
- oguzy_191375
Nimbostratus
Hi,
when HTTP_REQUEST { if { [string tolower [HTTP::host]] equals "abc-test-domain.com" } { HTTP::respond 301 "Location" "http://dc-abc-test-domain1.com" } }
- Abhijith_Subban
Nimbostratus
If, the listening and responding port is 8080 then during http response header. Can this be done :
when HTTP_REQUEST { if { [string tolower [HTTP::host]] equals "abc-test-domain.com" } { HTTP::respond 301 "Location" "[http://dc-test-domain1.com:8080 :8080"](http://dc-test-domain1.com:8080 :8080); } }
- oguzy_191375
Nimbostratus
Yes, sure.
- THi
Nimbostratus
Just a note on the 301 redirect:
Instead of 301 Moved Permanently, I'd rather use 307 Temporary Redirect. Browsers may cache 301s indefinitely, and it may be difficult to remove the cache entry, if you need to modify the redirect location later on. Depending on browser, the 301 cache may persist over restarts..
Some may use 302 redirects, but 307 will also keep the original HTTP method (eg. GET, POST, HEAD), 302 may not.
So, I would try to avoid a 301 redirects, unless I were 100% sure of the need of permanently de-commissioning the old URL.
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