2016-09-21 106 views
0

我需要爲URL添加前綴,並讓它從另一個URL提供內容。 基本上HAProxy運行在另一臺服務器上,並且在另一臺服務器上有artifactory服務器。 artifactory在8081上偵聽,所以我點擊artifactoryserverIp:8081 和artifactory主頁顯示。 現在,如果我在瀏覽器中點擊HAProxyServer/abcartifactory,該URL應該保持不變,但應該在內部點擊artifactoryserverIp:8081。帶URL前綴的HAProxy

這裏是我的配置

frontend http 
bind *:80 
acl host_is_artifactory path_beg /abcartifactory 
use_backend artifactory-backend if host_is_artifactory 

backend artifactory-backend 
reqrep ^([^\ :]*)\ /(.*) \1\ /abcartifactory/\2 
server node1 artifactoryserver:8081 

輸出瀏覽器說找不到資源

+0

您在前面加上/ abcartifactory的路徑,但它已經是那裏。爲什麼?另外,'HAProxyServer/ABCartifactory'將不匹配'path_beg',在瀏覽器路徑中大寫字母,而代理配置中則爲小寫字母。 –

+0

我編輯過的path_beg,這是我的錯字。關於前綴我不知道從其他論壇獲得,但讓我知道我應該做什麼,所以它只顯示了artifactory頁面,並保持與前綴/ abcartifactory在瀏覽器中的相同的URL – Pushparaj

+0

可以有人提供了一些在這個regrad指針,仍然沒有解決 – Pushparaj

回答

0

試試這個

frontend http 
    bind *:80 
    acl host_is_artifactory path_beg /abcartifactory 
    use_backend artifactory-backend if host_is_artifactory 

backend artifactory-backend 
    reqrep ^([^\ ]*\ /)abcartifactory [/]?(.*) \1\2 
    server node1 artifactoryserver:8081 
+0

真棒,你讓我的一天! – Pushparaj