Nginx实现反向代理

1. 什么是反向代理

正向代理

 反向代理:

   反向代理服务器决定哪台服务器提供服务,返回代理服务器不提供服务器。也是请求的转发。

2.Nginx实现反向代理

  两个域名指向同一台nginx服务器,用户访问不同的域名显示不同的网页内容。

  两个域名是www.sian.com.cnwww.sohu.com

  nginx服务器使用虚拟机192.168.101.3 

第一步:安装两个tomcat,分别运行在80808081端口。

第二步:启动两个tomcat

第三步:反向代理服务器的配置

upstream tomcat1 {
	server 192.168.25.148:8080;
    }
    server {
        listen       80;
        server_name  www.sina.com.cn;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            proxy_pass   http://tomcat1;
            index  index.html index.htm;
        }
    }
    upstream tomcat2 {
	server 192.168.25.148:8081;
    }
    server {
        listen       80;
        server_name  www.sohu.com;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            proxy_pass   http://tomcat2;
            index  index.html index.htm;
        }
    }

第四步:nginx重新加载配置文件

第五步:配置域名

  在hosts文件中添加域名和ip的映射关系

  192.168.25.148 www.sina.com.cn

  192.168.25.148 www.sohu.com

3.   负载均衡

 如果一个服务由多条服务器提供,需要把负载分配到不同的服务器处理,需要负载均衡。

 upstream tomcat2 {

       server 192.168.25.148:8081;

       server 192.168.25.148:8082;

  }

可以根据服务器的实际情况调整服务器权重。权重越高分配的请求越多,权重越低,请求越少。默认是都是1

 upstream tomcat2 {
	server 192.168.25.148:8081;
	server 192.168.25.148:8082 weight=2;
    }
原文地址:https://www.cnblogs.com/jingjiren/p/13125646.html