Nginx反向代理子目录到root

时间:2014-01-14 23:26:49

标签: nginx

因此。我使用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"

1 个答案:

答案 0 :(得分:0)

尝试在执行代理传递之前添加重写,我假设您将保留/sync之后的内容,希望这对您有用

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