zoukankan      html  css  js  c++  java
  • Nginx 中 proxy_pass 的斜杠问题

    server {
        listen       80;
        server_name  localhost;
    
        location /api1/ {
           proxy_pass http://localhost:8080;
        }
        
        # http://localhost/api1/xxx -> http://localhost:8080/api1/xxx
    
    
        location /api2/ {
           proxy_pass http://localhost:8080/;
        }
        
        # http://localhost/api2/xxx -> http://localhost:8080/xxx
    
    
        location /api3 {
            proxy_pass http://localhost:8080;
        }
        
        # http://localhost/api3/xxx -> http://localhost:8080/api3/xxx
    
    
        location /api4 {
            proxy_pass http://localhost:8080/;
        }
        
        # http://localhost/api4/xxx -> http://localhost:8080//xxx,请注意这里的双斜线,好好分析一下。
    
    
        location /api5/ {
            proxy_pass http://localhost:8080/haha;
        }
        
        # http://localhost/api5/xxx -> http://localhost:8080/hahaxxx,请注意这里的haha和xxx之间没有斜杠,分析一下原因。
    
        location /api6/ {
            proxy_pass http://localhost:8080/haha/;
        }
        
        # http://localhost/api6/xxx -> http://localhost:8080/haha/xxx
    
        location /api7 {
            proxy_pass http://localhost:8080/haha;
        }
        
        # http://localhost/api7/xxx -> http://localhost:8080/haha/xxx
    
        location /api8 {
            proxy_pass http://localhost:8080/haha/;
        }
        
        # http://localhost/api8/xxx -> http://localhost:8080/haha//xxx,请注意这里的双斜杠。
    }

    在 nginx 中配置 proxy_pass 时,当在后面的url加上了 /,相当于是绝对根路径,则 nginx 不会把 location 中匹配的路径部分代理走;

    如果没有 /,则会把匹配的路径部分也给代理走;

    参考链接:https://www.jianshu.com/p/c751250a5112

    艺无止境,诚惶诚恐, 感谢开源贡献者的努力!!
  • 相关阅读:
    二叉搜索树
    splay模板
    树状数组模板
    K尾相等数
    寻找最大数
    布线问题(最小生成树)
    开心的小明
    独木舟上的旅行(二)
    The Triangle(记忆化搜索)
    喷水装置(二)
  • 原文地址:https://www.cnblogs.com/d0usr/p/12487335.html
Copyright © 2011-2022 走看看