方法一:Redirect URL
通過啟用SSL VS 屬性設置中的RedirectFrom Port 和HTTPS Redirect URL 功能實現。
操作步驟
1、首先需要創建好HTTPS類型的VS,點擊Edit

Redirect From Port:80
//表示監聽從 80 埠來的http 請求,觸發重定向
HTTPS Redirect URL:https://www.zhongssl.com/
//重定向的目標 UR

CLI
set lb vservervs-192.168.50.216-http-443 -redirectFromPort 80 -redirectURL https://www.zhongssl.com
限制條件
- 在HTTPS類型的VS中配置Redirect From Port 和HTTPS Redirect URL 這兩個屬性時,不得有相同IP的80 埠的VS存在,否則會無法執行配置命令
- 僅適用於HTTPS類型(SSL)的LB VS,不適用於Gateway VS和Content Swich VS
- 僅使用於VS上僅有單個功能變數名稱的 http 請求的重定向
適用場景
- 配置較為簡單,無須新增 http 80 的 LBVS
- 一個 LBVS 對應一個業務
方法二:VS Down Protection
通過LBVS Down Protection 功能進行實現
操作步驟
1、創建一個 http 80的VS

不綁定任何的 Service 或者Service Group,目的是保持這個 LBVS Down 的狀態,從而觸發Protection 功能

新增 Protection,配置重定向到https://www.zhongssl.com

CLI
add lb vservervs-192.168.50.216-http-80-redirect HTTP 192.168.50.216 80 -persistenceType NONE-redirectURL “https://www.zhongssl.com”
限制條件
- 需要新增個 http 80的lbvs,而且狀態是 Down 的,從狀態觀察的角度,紅色顯示不利於監控
- http 80 LBVS的 State 必須為 Down,才可觸發 Protection 功能
方法三:Responder policy-Redirect
通過 Responder Policy 來實現 Redirect 功能。
1. 首先,創建一個Always UP的 Monitor
2. 然後,Service綁定 Monitor Always UP
3. 最後,VS綁定 Service
4. 創建 Responder Action
5. 創建 Responder Policy
6. 將 Responder Policy 綁定到 VS 上使其生效
設定步驟
1、首先,創建一個 AlwaysUP 的 Monitor

2、然後,Service 綁定 Monitor Always UP


3、最後,VS 綁定 Service

4、創建 Responder Action

5、創建 Responder Policy

6、將 Responder Policy 綁定到VS 上使其生效

CLI
add lb monitor alwaysup-monitorPING -LRTM DISABLED -destIP 127.0.0.1add service svc-1.2.3.4 1.2.3.4HTTP 80bind service svc-1.2.3.4-monitorName alwaysup-monitorbind lb vserver vs-192.168.50.216-http-80-redirectsvc-1.2.3.4 add responder actionhttp-to-https-redirect redirect “\”https://\” +HTTP.REQ.HOSTNAME.HTTP_URL_SAFE +HTTP.REQ.URL.PATH_AND_QUERY.HTTP_URL_SAFE” -responseStatusCode 302add responder policypolicy-responder-https-redirect http.REQ.IS_VALID http-to-https-redirectbind lb vservervs-192.168.50.216-http-80-redirect -policyName policy-responder-https-redirect-priority 100 -gotoPriorityExpression END -type REQUEST
該方法適配各種場景,因為採用變數進行傳遞,無須填寫固定的 Redirect 之後的功能變數名稱,靈活性較強。
發表迴響