最近使用Nginx的一点新得

1.基本的负载配置

  Nginx最简单的配置模块如下

upstream name{  
    server ip:port;  
    server ip:port;  
}   
  
 server {  
        listen       80;  
        server_name  域名/ip;   
        location / {  
            proxy_pass   http://name;  
            index  index.html index.htm;  
        }  
     }   

  需要注意的是proxy_pass中的 http://name中的name,指代的就是upstream的name

  当upstream中只有一个server时,proxy_pass可以写成http://ip:port

  server_name的意思是获取访问方的信息,可以是IP,可以是域名,指的是浏览器中输入的url

  假如server_name写的是 www.baidu.com,那么他只过滤请求前缀是www.baidu.com的请求,www.souhu.com的请求不是这个规则

  Nginx的配置文件中可以配置多段组合

  注意:如果一个端口要负载多个tomcat应用的话,server_name必须写域名,否则Nginx只会处理第一个server的规则

2.反向代理

  反方代理的意思就是将用户访问的地址重定向到其他的服务,假如要访问www.aa.com/a,通过配置Nginx的反向代理实际指向了b

server {

    listen 80;
    server_name dist.hp.com;
    location /bigscrbe{
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:3080/bigscrbe;
        #proxy_pass http://tomcat;
    }

    location /{
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:8080;
        #proxy_pass http://tomcat;
    }

    access_log logs/dist_access.log;
}

  这个例子中 访问dist.hp.com指向的是一个网站,而访问dist.hp.com/bigscrbe给人的感觉是访问dist.hp.com一个资源,实际上是访问了另一个tomcat应用

  这个也是Nginx二级目录的用法

原文地址:https://www.cnblogs.com/Yiran583/p/8619041.html