F5 irule url跳转

需求:
1,abc.com和 [url]www.abc.com[/url]两个域名解析成同一个ip(F5上的vip1),提供443服务,并且只提供 [url]www.abc.com[/url]的证书;但是平时会有人通过访问 [url]http://www.abc.com[/url]或者 [url]http://abc.com[/url]来访问。所以通过 abc.com来访问的话会有证书确认的提示。
2,xyz.abc.com解析成另外一个ip(F5上的vip2),提供443服务,绑定xyz.abc.com的证书。
需要解决如下问题:
1,所有通过http访问的需要跳转到https来访问,即如: [url]http://www.abc.com[/url]需要跳转到 [url]https://www.abc.com/[/url]或者 [url]http://abc.com[/url]需要跳转到 [url]https://www.abc.com/[/url]来访问;
2,所有通过 abc.com来访问的需要跳转到 [url]www.abc.com[/url]来访问;
3,针对上述两个vip,使用统一的irule。
书写irule如下:
rule redirect_http2ssl {
when HTTP_REQUEST {
if { [HTTP::host] equals "abc.com" }{
HTTP::redirect [url]https://www.abc.com[/url][HTTP::uri]
}
else { HTTP::redirect https://[HTTP::host][HTTP::uri] }
}
}
应用irule:
将此irule应用到两个ip(vip1和vip2)的80服务上面。