Forum Discussion
nitass
Jan 20, 2013Employee
I am not sure if it has to do with the nested IFs.is this article helpful?
Comparing iRule Control Statements by Joe
https://devcentral.f5.com/tech-tips/articles/comparing-irule-control-statements
What is the purpose of the command RETURN? return Wiki
https://devcentral.f5.com/wiki/irules.return.ashx
1. Users will just type www.test.com on their browser which will redirect the user to "www.test.com/reseller" BUT the link on the browser will still show www.test.com. User is not aware of redirectionyou can use HTTP::uri command.
HTTP::uri Wiki
https://devcentral.f5.com/wiki/iRules.HTTP__uri.ashx
e.g.
root@(ve11a)(cfg-sync Changes Pending)(Active)(/Common)(tmos) list ltm virtual bar
ltm virtual bar {
destination 172.28.20.14:443
ip-protocol tcp
mask 255.255.255.255
pool foo
profiles {
clientssl {
context clientside
}
http { }
tcp { }
}
rules {
myrule
}
source 0.0.0.0/0
source-address-translation {
type automap
}
vlans-disabled
}
root@(ve11a)(cfg-sync Changes Pending)(Active)(/Common)(tmos) list ltm pool foo
ltm pool foo {
members {
200.200.200.101:80 {
address 200.200.200.101
}
}
}
root@(ve11a)(cfg-sync Changes Pending)(Active)(/Common)(tmos) list ltm rule myrule
ltm rule myrule {
when HTTP_REQUEST {
if { [HTTP::uri] equals "/" } {
HTTP::uri "/reseller"
}
}
}
[root@ve11a:Active:Changes Pending] config ssldump -Aed -nni 0.0 port 443 or port 80 -k /config/ssl/ssl.key/default.key
New TCP connection 1: 172.28.19.251(49780) <-> 172.28.20.14(443)
1 1 1358684881.2414 (0.0197) C>S SSLv2 compatible client hello
1 2 1358684881.2414 (0.0000) S>CV3.1(81) Handshake
1 3 1358684881.2414 (0.0000) S>CV3.1(866) Handshake
1 4 1358684881.2414 (0.0000) S>CV3.1(4) Handshake
1 5 1358684881.2436 (0.0021) C>SV3.1(262) Handshake
1 6 1358684881.2436 (0.0000) C>SV3.1(1) ChangeCipherSpec
1 7 1358684881.2436 (0.0000) C>SV3.1(36) Handshake
1 8 1358684881.2524 (0.0087) S>CV3.1(1) ChangeCipherSpec
1 9 1358684881.2524 (0.0000) S>CV3.1(36) Handshake
1 10 1358684881.2534 (0.0009) C>SV3.1(174) application_data
---------------------------------------------------------------
GET / HTTP/1.1
User-Agent: curl/7.15.5 (i686-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
Accept: */*
Host: www.test.com
---------------------------------------------------------------
New TCP connection 2: 200.200.200.13(16983) <-> 200.200.200.101(80)
1358684881.2555 (0.0016) C>S
---------------------------------------------------------------
GET /reseller HTTP/1.1
User-Agent: curl/7.15.5 (i686-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
Accept: */*
Host: www.test.com
---------------------------------------------------------------