Note in the above example, I've set it so client requests without the Client-IP header will be redirected. How would you want to handle these requests? Would you want to look up the actual client IP instead? If so, you can try this:
when HTTP_REQUEST {
Parse the client IP from the CDN header
set client_ip [HTTP::header value "Client-IP"]
if { $client_ip eq "" }{
The header was empty/did not exist, so use the actual client IP
set client_ip [IP::client_addr]
}
switch [whereis $client_ip abbrev] {
"MO" -
"IL" {
Do nothing and allow the request
}
default {
Redirect all others
HTTP::redirect "http://www.example.com/
}
}
}
Aaron