Nginx负载均衡

6
我想使用nginx对我的网站进行负载均衡。
nginx wiki中的负载均衡是代理,因此实际文件是从前端服务器下载的。(http://wiki.nginx.org/LoadBalanceExample)
这就是我需要的负载均衡方式:
用户请求文件:
- http://site.com/image1.jpg
nginx将用户重定向到其中一个服务器(带有Location头):
- http://s1.site.com/image1.jpg - http://s2.site.com/image1.jpg - http://s3.site.com/image1.jpg
nginx是否支持这种方式?

这是可能的,但相当无用。你不应该从服务器加载图像,然后再添加一个额外的重定向并再次访问服务器。你需要做的是直接在你的HTML中使用静态域名(sx.site.com)。(例如:<img src="http://sx.site.com/image1.jpg> - TheHippo
你能否给出一个如何做到这一点的示例?谢谢。 - user2350551
1个回答

3
http {
  split_clients "${remote_addr}" $server_id {
    33.3% 1;
    33.3% 2;
    33.4% 3;
  }

  server {
    location ~* \.(gif|jpg|jpeg)$ {
      return 301 "${scheme}://s${server_id}.site.com${request_uri}";
    }
  }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接