nginx反向代理和负载均衡的基本配置
一、反向代理的基本配置
在原本默认的nginx上修改server配置
server { listen 2222;#监听请求端口 server_name 192.168.100.3;#监听请求地址,nginx所在服务器地址 location /hello { proxy_pass http://192.168.100.4:4444;#被代理的url }
上面的例子,如果服务器接收到一个请求:http://192.168.100.3:2222/hello,那么这个请求会被转发到http://192.168.100.3:4444/hello
二、负载均衡基本配置
在http模块里加upstream模块,并修改server模块
upstream test { #weigth参数表示权值,权值越高被分配到的几率越大 server 10.20.20.179:4444 weight=1; server 10.20.40.120:4444 weight=1; server 10.20.20.191:4444 weight=1; } server { listen 2222; server_name 10.20.20.191; location /hello { proxy_pass http://test;#请求转向taishan定义的服务器列表 proxy_set_header Host $host;#将请求头转发给后端服务器 proxy_set_header X-Forward-For $remote_addr;#后端的Web服务器可以通过X-Forwarded-For获取用户真实IP }
nginx监听2222端口,proxy_pass 配置的url是upstream配置的一组IP地址和端口,按照不同的转发规则,请求会被转发到其中一个。
如:10.20.20.191:2222的请求会被转发到taishan组合中的一个。
就算这个世道烂成一堆粪坑,那也不是你吃屎的理由