负载均衡(反向代理)

负载均衡(反向代理)

小污龟 1,292 2022-10-13

1 ,需要三台服务器:一台LNMP 两台LAMP

S  192.168.22.1 nginx  服务代理
S1 192.168.22.2 apache web服务器
S2 192.168.22.3 apache web 服务器

测试相互联通

ping 192.168.22.1
ping 192.168.22.2
ping 192.168.22.3

2, 配置 S 服务器nginx的配置文件

vim /usr/local/nginx/conf/nginx.conf

#下面的代码是指定两个web服务器的IP地址

upstream myweb{
			ip_hash; //同一固定ip访问同一服务器
            server 192.168.22.1;
            server 192.168.22.2;
}
server
    {
        #这行只写监听端口,其他不写
        listen 80;
        #server_name www.baidu.com;
        location /
        {
            proxy_pass http://myweb; #指定接受请求之后适用哪个服务组响应web服务
            proxy_next_upstream http_500 http_502 http_503 error timeout invalid_header;
            #指定请求应传递到下一个服务器的情况:		
            #http_500:服务器返回了带有代码500的响应;
            #http_502:服务器返回具有代码502的响应;
            #HTTP_503:服务器返回具有代码503的响应;
            #timeout:在与服务器建立连接,向其传递请求或读取响应头时发生超时;
            proxy_set_header Host $host;
            #设置由后端的服务器获取用户的主机名或者真实的IP地址,以及代理者的真实IP地址
            proxy_set_header X-Forwarded-For $remote_addr;
        }
     }

3, 修改web服务器 S1和 S2 要求是正常方法,并且不能开启虚拟主机