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 要求是正常方法,并且不能开启虚拟主机