nginx一个端口代理多个前后端服务

必须使用alias----(这我很不理解为什么,都用root就会404,有知道的大神请告知下!)
使用alias和root区别:在于资源路径的匹配解读上!
访问root定义的资源路径,会带着location后的uri和root指定的资源路径组合在一起去访问服务器资源;alias是忽略localtion后的uri,直接访问alias指定的资源路径;
假设访问的域名:www.123.com/abc 那么url = www.123.com/abc uri = abc

server {
             listen       9002;
             server_name  loaclhost;
             gzip  on;
             gzip_min_length 256;
             gzip_comp_level 6;
             gzip_types text/plain  text/css text/javascript image/png image/jpg image/jpeg   application/xml application/x-javascript application/javascript ;
             gzip_vary on;
             gzip_proxied any;
       location / {
                    root /data/web/feparkingh5;
                    try_files $uri $uri/ /index.html;
                    index  index.html index.htm;
                    access_log /var/log/nginx/feparkingh5_log main;
                   }
       location /feparkinglotweb {
                    alias /data/web/feparkinglotweb/;
                    try_files $uri $uri/ /feparkinglotweb/index.html;
                    index  index.html index.htm;
                    access_log /var/log/feparkinglotweb_log main;
                  }
       location /ftp {
                    alias /data/web/ftp/;
                    try_files $uri $uri/ /index.html;
                    index  index.html index.htm;
                    access_log /var/log/ftp_log main;
                  }
}
2、前后端or多个后端结合代理
增加相应的location
访问的时候后面添加对应的路径 :
如下图
访问 16.168.139.227:8082 默认会代理到16.168.139.227:8085端口
访问 16.168.139.227:8082/img就会自动代理到16.168.139.180/img下

nginx一个端口代理多个前后端服务

阅读剩余
THE END