例子以及Nginx以及多个serve和listent的作用


worker_processes  1;
     error_log  logs/error.log  info;

     events {
          worker_connections  1024;
     }


     http {
               include       mime.types;
               default_type  application/octet-stream;
               sendfile        on;
               keepalive_timeout  75 20;

          upstream localhost{
               server localhost:18081;
               server localhost:18080;
          }

     server {
       #default
          listen       800;
        server_name   192.168.1.2;
       location ~ ^/ {
                    #proxy_pass http://192.168.180.1:18081;
                    proxy_pass http://localhost;
                    proxy_redirect  default;
          }


     error_page   500 502 503 504  /50x.html;
          location = /50x.html {
               root   html;
          }
     }


     server {
     #监听80端口号,注意:对于Http请求如果不指定端口,默认监听的就是80,
          listen       80;
          #server_name   www.hello.com;
          server_name    192.168.1.3;

       location /aaaaaa {
                    proxy_pass http://localhost;
                    proxy_redirect  default;
          }
     }
    
}



总结:nginx可以配置多个serve,
1、每个serve根据配置的端口号监听相应的请求。注意http请求默认的端口号就是80,所以如果配置的serve端口都不是80那么对于默认的Http请求都无法代理成功;
2、当有一个域请求访问到nginx服务器之后,nginx会根据访问的端口号去匹配各个serveName,先扫描所有的serveName,如果找到相对应的,那么就执行,如果没有一个匹配上,那么就会根据配置的顺序从上到下默认只要有一个location配置匹配,那么这个serve就是指定的serve,当然如果手动设置某个serve为default,那么匹配不成功就直接推出,同样,如果所有的serve监听端口号都不是请求的端口号,自然访问就失败了。


Nginx 文档地址:
http://www.nginx.cn/doc/index.html




















你可能感兴趣的:(nginx)