修改配置文件

1
2
3
4
5
6
vim /usr/local/nginx/conf/nginx.conf
在http字段中添加:
upstream webs {
server {web IP+端口} weight=1;
server {web IP+端口} weight=1;
}
1
2
3
4
5
6
7
在server字段中添加:
location ~ \.html {
proxy_pass http://webs;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_ser_header X-Forwarded-For $proxy_add_x_forwarede_for; proxy_next_upstream http_500 http_503 error timeout;
}

proxy_connect_timeout 90; //定义代理服务器与代理节点之间的连接超时时间,单位是秒(可以自定义时间)
proxy_send_timeout 90; //定义被代理节点等待代理服务器发送请求的超时时间,单位秒(可以自定义时间)
proxy_read_timeout 90; //定义代理服务器等待被代理节点发送响应的超时时间,单位秒,(可以自定义时间)
proxy_redirect off; //代理服务器不对客户端请求头部中的Location字段进行重写
proxy_set_header Host $host; //将客户端请求头部中的Host字段值设置为客户端访问的域名
proxy_set_header X-Real-IP $remote_addr; //将客户端请求头部中的X-Real-IP中的字段设置为客户端的IP地址
proxy_set_header X-Forwarded-For $proxy_add_x_forwarede_for; //设置客户端请求头部中X-Forwarded-For值为该请求报经过的主机地址和客户端地址
proxy_buffer_size 4k; //设置代理服务器响应数据的缓冲区大小,4k或者8k
proxy_buffers 4 32k; //设置代理服务器响应数据的缓冲区个数和大小
proxy_busy_buffers_size 64; //当请求数量多时,允许缓冲区最大的大小为64k
proxy_next_upstream http_500 http_503 error timeout; //当upstream集群中定义的某个节点无法处理请求时,例如状态为500,503,连接失败或者超时时,就将请求交给集群中的其他节点处理

重载服务

1
nginx -s reload

后端web配置

web1

修改访问页面

1
2
3
vi /usr/local/nginx/html/index.html
添加:
Welcome To nginx 172.16.1.13

重载服务

1
nginx -s reload

放行防火墙

1
2
systemctl stop firewalld
setenforce 0

web2

修改访问页面

1
2
3
vi /usr/local/nginx/html/index.html
添加:
Welcome To nginx 172.16.1.14

重载服务

1
nginx -s reload

放行防火墙

1
2
systemctl stop firewalld
setenforce 0

客户端验证

1
2
3
4
curl 172.16.1.12
Welcome To nginx 172.16.1.13
curl 172.16.1.12
Welcome To nginx 172.16.1.14