Forum Discussion
CGI
Altostratus
Jan 11, 2011Irule problem
Hi iam trying to combine a couple of functions into one irule, the irule should look at the origin land
of the request allowing only countries i a specific data list and then look at the the i...
CGI
Altostratus
Jan 12, 2011This part works if i remove the log local :-
when CLIENT_ACCEPTED {
if {([class match [whereis [IP::client_addr] country] eq allowed_country] or [class match [IP::client_addr] eq allowed_ip])} {
set allowed 1 }
else { set allowed 0
log local0. "Blocked Country client IP: [IP::client_addr] from [whereis [IP::client_addr] country]"}}
like:-
when CLIENT_ACCEPTED {
if {([class match [whereis [IP::client_addr] country] eq allowed_country] or [class match [IP::client_addr] eq allowed_ip])} {
set allowed 1 }
else { set allowed 0 }}
But the bottom part does not work either :-
if { ([$allowed eq 1] and [whereis [IP::client_addr] country ] eq "dk" and [[HTTP::uri] contains "/compass/*"])}{
pool Compass_http_pool}
else {pool OnDemand_htp_pool}}
So iam cheking the ip´s first against two data lists one that is called allowed ip´s and one thats allowed countries and allowing certain ip´s and
countries through but (and i would like to log the traffik) but then if one of the urls includes /compass/ and is from denmark then it should be sent to
a seperate pool all others to the default pool.
Iam afraid iam not so accomplished with the syntax.
Regards Craig
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