【Nginx】第十六节 配置反向代理

版权声明:咔咔 来自https://blog.csdn.net/fangkang7 https://blog.csdn.net/fangkang7/article/details/86289058

author:咔咔

wechat:fangkangfk

反向代理是我们在日常工作中最常使用的配置语法,这里只配置简单的语法实现反向代理

在配置反向代理之前,我们先了解一下在项目配置的反向代理的公共配置

proxy_redirect是定义重定向配置

proxy_set_header Host $http_host;是添加头信息,添加主机地址

proxy_ser_header X-Real-IP $remote_addr;是添加ip地址,因为在使用nginx作为反向代理时,真实服务器是获取不到用户ip的,所以需要配置一个自定义参数,将每一层的ip地址都追加在后边

proxy_connect-timeout 30;是连接超时时间

proxy_buffer_size 32k;是缓冲区,跟之前写的no_push是一样的

下来我们配置反向代理,负载均衡

先看一个图,这个图是反向代理的一个流程图,用户访问服务器,先经过代理服务器,然后代理服务器在根据upstream来访问真实服务器,最后返回数据给用户

我们需要俩台服务器,一台服务器做反向代理服务器,另一台电脑用端口区分不同的服务器组

  1. http:用于进行http协议信息的一些配置
  2. server:用于进行服务器访问信息的配置
  3. location:用于进行访问路由的配置
  4. upstream:用于进行负载均衡的配置

比如这个配置,我们配置了俩个服务组

当我们访问8081.max.com时会通过proxy_pass访问tomcatserver1 的服务组

当我们访问8082.max.com时会通过proxy_pass访问tomcatserver2 的服务组

upstream tomcatserver1 {  
    server 192.168.72.49:8081;  
    }  
upstream tomcatserver2 {  
    server 192.168.72.49:8082;  
    }  
server {  
        listen       80;  
        server_name  8081.max.com;  
  
        #charset koi8-r;  
  
        #access_log  logs/host.access.log  main;  
  
        location / {  
            proxy_pass   http://tomcatserver1;  
            index  index.html index.htm;  
        }       
    }  
server {  
        listen       80;  
        server_name  8082.max.com;  
  
        #charset koi8-r;  
  
        #access_log  logs/host.access.log  main;  
  
        location / {  
            proxy_pass   http://tomcatserver2;  
            index  index.html index.htm;  
        }          
    }  

在这之前我们写了几个固定配置项,这几个配置项,我们可以也放置到一个文件,然后在location里边引入即可,是一个公共配置

猜你喜欢

转载自blog.csdn.net/fangkang7/article/details/86289058