when HTTP_REQUEST switch -glob string tolower getfield HTTPhost 1HTTPuri wwwliveappcustomercoukapp2easypath_ HTTPpath string map app2easypath realpath HTTPpath ; SSLdisable servers
这段代码是一个iRule,它是用于F5 BIG-IP负载均衡器的一种配置语言。当有HTTP请求到达时,这个iRule会根据请求的主机和URI路径进行匹配,并执行相应的操作。
首先,使用switch语句根据请求的主机和URI路径进行匹配。如果匹配到"www.liveapp.customer.co.uk/app2easypath_",则执行以下操作:
- 修改HTTP请求的路径,将/app2easypath替换为/realpath,并将修改后的路径赋值给HTTP::path。
- 禁用SSL服务器端功能。
- 将请求转发到名为CUST1-WEB-PROD-APP2-Pool的服务器池。
如果匹配到"www.testapp.customer.co.uk/app2easypath_",则执行以下操作:
- 修改HTTP请求的路径,将/app2easypath替换为/realpath,并将修改后的路径赋值给HTTP::path。
- 禁用SSL服务器端功能。
- 将请求转发到名为CUST1-WEB-PROD-APP2-test-Pool的服务器池。
如果没有匹配到任何条件,则执行以下操作:
- 将HTTP请求重定向到http://www.google.com。
请注意,代码中存在括号不匹配的问题,可能是因为复制错误。正确的代码应该是:
when HTTP_REQUEST {
switch -glob [string tolower [getfield [HTTP::host] ":" 1][HTTP::uri]] {
"www.liveapp.customer.co.uk/app2easypath_" {
HTTP::path [string map { /app2easypath /realpath } [HTTP::path]]
SSL::disable serverside
pool CUST1-WEB-PROD-APP2-Pool
}
"www.testapp.customer.co.uk/app2easypath_" {
HTTP::path [string map { /app2easypath /realpath } [HTTP::path]]
SSL::disable serverside
pool CUST1-WEB-PROD-APP2-test-Pool
}
default {
HTTP::redirect http://www.google.com
}
}
}
希望能对你有帮助
原文地址: https://www.cveoy.top/t/topic/hKIq 著作权归作者所有。请勿转载和采集!