因此。我使用Nginx作为负载均衡器来加载几个实例之间的流量。
假设我的Nginx负载均衡器位于platform.staging.com(示例)。
我正在尝试重定向来自
的流量platform.staging.com/sync
其中一个:
sync1.staging.com:12345
sync2.staging.com:12345
请注意,我想要实现的是将/ sync部分剥离,并且同步实例的请求应该有路径/。
这是我尝试的但它不起作用:
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 :(得分:0)
尝试在执行代理传递之前添加重写,我假设您将保留/sync
之后的内容,希望这对您有用
location ^~ /sync(.*) {
rewrite ^ $1;
proxy_pass ...;
}