我在 AWS 上運行了一個應用程式,它在 application / 目錄下運行。我想在 AWS 負載均衡器上創建基于路徑的路由并將其作為兩個應用程式運行,但我收到 404 錯誤。如何在不在后端執行任何操作的情況下使用 AWS Application Load Balancer 執行此操作?
結構:
- domain.com/server1 (AWS 負載均衡器) ---> TargetGroup1 --- > /
- domain.com/server2 (AWS 負載均衡器) ---> TargetGroup2 --- > /
簡而言之,當我想訪問https://lbaddress/test1地址時,我希望在我的后端(作業root folder /)服務器上運行的軟體運行
Nginx 方面,我可以這樣做。
location ^~ /server1 {
rewrite ^/server1(.*)$ $1 last;
}
此規則不起作用,面臨 404 代碼。
uj5u.com熱心網友回復:
AWS ALB 不支持路徑重寫。domain.name/server1/foo轉發請求時,目標主機將看到/server1/foo,而不是/foo。由于您可能沒有/server1在目標主機上進行配置,因此它將回傳 404。
uj5u.com熱心網友回復:
轉到您的 ALB 偵聽器。在適當的偵聽器中單擊“查看/編輯規則”。在那里你可以添加你的規則。你想做一個基于路徑的路由,所以你將添加這個規則:
IF PATH is /server1/* THEN Forward to TG1
IF PATH is /server2/* THEN Forward to TG2
/* 被添加,因此它匹配路徑 start 中的任何內容,從相應的服務器開始。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/412514.html
標籤:
