2014-01-14 111 views
0

所以。我使用Nginx作爲負載平衡器來加載兩個實例之間的流量。Nginx反向代理子目錄到根

假設我的Nginx負載均衡器位於platform.staging.com(示例)。

我試圖從

platform.staging.com/sync 

將流量重定向到其中的一個:

sync1.staging.com:12345 
sync2.staging.com:12345 

注意什麼,我想實現是有/同步部分剝離下來,並請求同步實例應該有路徑/。

這是我試過,但它不工作:

upstream sync-cluster { 
    ip_hash; 
    server sync1.staging.com:12345; 
    server sync2.staging.com:12345; 
} 

server { 
    listen 443 ssl spdy; 
    server_name platform.staging.com; 

    location /sync { 
    proxy_pass http://sync-cluster; 
    } 
} 

在日誌中我可以看到:

2014/01/14 23:20:38 [error] 2385#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: XX.XXX.XX.XXX, server: platform.staging.com, request: "GET /sync HTTP/1.1", upstream: "http://X.X.X.XXX:12345/sync", host: "platform.staging.com" 

回答

0

嘗試做代理通之前增加一個重寫,我會假設你打算保留/sync後面的內容,希望這能幫到你

location ^~ /sync(.*) { 
    rewrite^$1; 
    proxy_pass ...; 
}