Forum Discussion
KimiLi_147173
Nov 27, 2017Nimbostratus
Want to rewrite part of host
Hi guys, I'm still new to iRules, I wonder that if it is possible that an iRule can rewrite part of the host instead of all of it.
I mean like, if a client request a host like "123.aaa.com/888/"...
- Nov 28, 2017
If string position is known then you can use
function to grep value like below.getfield
set hostname [getfield [HTTP::host] "." 1] If the URL is xxx.aaa.bbb.com, then getfield command will grep value of 1st position xxx set hostname1 [getfield [HTTP::host] "." 2] If the URL is xxx.aaa.bbb.com, then getfield command will grep value of 2nd position aaa
Refer below link. Hope it will be helpful.
Samir_Jha_52506
Noctilucent
If string position is known then you can use
getfield
function to grep value like below.
set hostname [getfield [HTTP::host] "." 1] If the URL is xxx.aaa.bbb.com, then getfield command will grep value of 1st position xxx
set hostname1 [getfield [HTTP::host] "." 2] If the URL is xxx.aaa.bbb.com, then getfield command will grep value of 2nd position aaa
Refer below link. Hope it will be helpful.
KimiLi_147173
Nov 28, 2017Nimbostratus
Hi f5_rock,
YOU'RE THE MAN!
I believe this is what I want, according to your suggestion I've got an irule like this:
when HTTP_REQUEST {
Check if host contains "aaa.com"
if {[HTTP::host] contains "aaa.com"}{
Get the xxx from host xxx.aaa.com
HTTP::redirect "https://[getfield [HTTP::host] "." 1].bbb.com[HTTP::uri]"
}
}
And it works! I'll keep on doing further tests to figure out if there's still room to make it better.
Thanks again!
Recent Discussions
Related Content
DevCentral Quicklinks
* 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
Discover DevCentral Connects