# 配置实例三：对特定资源实现负载均衡

在该实例片段中，我们设置了两组被代理的服务器组，名为“**videobackend**”的一组用于对请求video资源的客户端请求进行负载均衡，另一组用于对请求**file**资源的客户端请求进行负载均衡。

通过对location块uri的不同配置，我们就很轻易地实现了对特定资源的负载均衡。所有对“**<http://www>. myweb.name/video/**\_”的请求都会在**videobackend**服务器组中获得均衡效果，所有对“\*\*<http://www.myweb.name/file/**_”的请求都会在**filebackend**服务器组中获得均衡效果。>

在location /file/ {……}块中，我们将客户端的真实信息分别填充到了请求头中的“Host”、“X-Real-IP”和“X-Forwarded-For”头域，这样**后端服务器组收到的请求中就保留了客户端的真实信息，而不是Nginx服务器的信息**。

```nginx
…  #其他配置
upstream videobackend                                        #配置后端服务器组1
{
  server 192.168.1.2:80;
  server 192.168.1.3:80;
  server 192.168.1.4:80;
}
upstream filebackend                                         #配置后端服务器组2
{
  server 192.168.1.5:80;
  server 192.168.1.6:80;
  server 192.168.1.7:80;
}
server
{
  listen 80;
  server_name  www.myweb.name;
  index  index.html  index.htm;
  location  /video/  {
    proxy_pass  http://videobackend;                          #使用后端服务器组1
    proxy_set_header  Host  $host;
    …
  }
  location  /file/  {
    proxy_pass  http://filebackend;                           #使用后端服务器组2
                                                        #保留客户端的真实信息
    proxy_set_header  Host  $host;
    proxy_set_header  X-Real-IP  $remote_addr;
    proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
    …
  }
  …
}
```
