需求:有图片服务器,A、B、C、D,由于某种原因,读取图片时,不知道图片在哪台机器上。所以用 nginx 来判断图片在哪台机器上。
upstream test.com {
server t2.com:80;
server t3.com:80;
server t4.com:80;
}
server {
listen 80;
server_name test.com;
root /var/www/test.com;
access_log logs/test.log main;
location / {
try_files $uri @proxy;
}
location @proxy {
proxy_next_upstream http_502 http_504 http_404 error timeout invalid_header;
proxy_pass http://test.com;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
参考资料
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_next_upstream