Nginx配置反向代理服务器
反向代理方式是指用代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络中的上游服务器,并将从上游服务器上得到的结果返回给Internet上的请求连接的客户端,此时代理服务器对外的表现就是一个web服务器。
基本原理
Nginx先完整的保存客户端的请求,然后再跟内网上游服务器建立连接,发送请求。
上游服务器处理结束后,将数据返回给Nginx,这时Nginx不会将完整数据缓存下来再返回给请求者客户端,而是边接收边返回。
缺点:增加请求时延
优点:Nginx分担了上游服务器的压力
负载均衡配置
upstream块:定义一个上游服务器的集群,便于反向代理中的proxy_pass使用。
配置示例
upstream backend {
ip_hash; # 采用ip哈希的算法负载均衡
server ip1;
server ip2:8000;
}
server {
location / {
proxy_set_header Host $host; # 反向代理服务器一般不会转发头部的host,需要转发则此配置需要加上
# 更对配置参考官方文档
proxy_pass http://backend;
}
}