F5 Big-IP iRule - перенаправление HTTP
Я только начал работать с Big-IP F5, и у меня есть вопрос о iRules и HTTP-перенаправлениях. Мы переходим к разгрузке нашего SSL с наших веб-серверов и на F5, наше приложение в его нынешнем виде заставляет несколько страниц нашего сайта работать только в HTTPS. Я хочу перенести это из приложения и на F5, но я не смог понять, как мы, поэтому в качестве примера я бы хотел, чтобы любой, кто пытается войти, был вынужден использовать HTTPS, например, http://"mysite"/login.aspx = https://"mysite"/login.aspx.
Я сделал несколько поисков в Google, которые дали мне хорошую информацию по этому вопросу, но я еще не нашел то, что я ищу, если кто-то сделал это и хотел бы поделиться со мной, что было бы здорово
2 ответа
Я понял, как делать то, что я хочу
_when HTTP_REQUEST {
if { [string tolower [HTTP::uri]] starts_with "/login.aspx" } {
HTTP::respond 302 Location "https://[getfield [HTTP::host] : "1"][HTTP::uri]"_
}
}
Хотя спасибо за помощь, это привело меня в правильном направлении.
Существует несколько способов использования iRules для перенаправления HTTP.
Вики-страница DevCentral HTTP to HTTPS Redirect содержит список примеров (и если вы будете искать на сайте, вы найдете много других примеров и обсуждений того, как выполнять более сложные перенаправления с помощью iRules).
В вашем примере iRule будет просто:
1 when HTTP_REQUEST {
2 HTTP::respond 301 Location "https://[getfield [HTTP::host] : 1][HTTP::uri]"
3 }
Примените это к виртуальному серверу (HTTP VS, а не HTTPS VS, или вы создадите бесконечный цикл перенаправления;-)), и все будет хорошо.