我刚开始使用F5的Big-IP,并且对iRules和HTTPredirect有个疑问。 我们正在将我们的SSL从我们的Web服务器卸载到F5上,因为我们的应用程序在我们的站点上执行了多个页面,只能运行在HTTPS上。 我想从APP中移动到F5上,但是我一直无法弄清楚,所以作为一个例子,我希望任何人都试图login被迫使用HTTPS,例如http://“mysite”/ login.aspx = https://“mysite”/login.aspx。
我已经做了一些谷歌search,已经拿出了一些关于这方面的很好的信息,但我还没有find我在找什么,如果有人已经这样做,并希望与我分享这将是伟大的
有多种方法可以使用iRules执行HTTPredirect。
DevCentral HTTP到HTTPSredirectWiki页面有一个示例列表(如果您search该站点,您会发现很多其他示例和关于如何使用iRules执行更复杂的redirect的讨论)。
在你的例子中,iRule只是:
1 when HTTP_REQUEST { 2 HTTP::respond 301 Location "https://[getfield [HTTP::host] : 1][HTTP::uri]" 3 }
把它应用到虚拟服务器(HTTP VS, 而不是 HTTPS VS,否则你将创build一个无限的redirect循环;-)),你应该很好去。
我已经想出了如何做我想要的
_when HTTP_REQUEST { if { [string tolower [HTTP::uri]] starts_with "/login.aspx" } { HTTP::respond 302 Location "https://[getfield [HTTP::host] : "1"][HTTP::uri]"_ } }
感谢您的帮助,但却让我朝着正确的方向前进。