nginx配置反向代理 proxy_pass URL末尾加与不加/(斜杠)的区别


文章目录

      • #常用反向代理配置方式
      • #测试有无 `/`(斜杠)的区别
        • 1、测试1
        • 2、测试2
        • 3、测试3
        • 4、测试4
        • 5、测试5
        • 6、测试6
        • 7、测试7
      • #结论
      • #参考


#常用反向代理配置方式

location /test/ {
     
    proxy_pass http://192.168.2.96:8087/;
}

访问:http://127.0.0.1/test

重定向到: http://127.0.0.1/test/

访问:http://127.0.0.1/test/

http://192.168.2.96:8087/

访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/login

#测试有无 /(斜杠)的区别

1、测试1

location /test {
     
    proxy_pass http://192.168.2.96:8087;
}

访问:http://127.0.0.1/test

http://192.168.2.96:8087/test

访问: http://127.0.0.1/test/

http://192.168.2.96:8087/test/

访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/test/login

2、测试2

location /test{
     
    proxy_pass http://192.168.2.96:8087/define;
}

访问:http://127.0.0.1/test

http://192.168.2.96:8087/define

访问:http://127.0.0.1/test/

http://192.168.2.96:8087/define/

访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/define/login

3、测试3

location /test/ {
     
    proxy_pass http://192.168.2.96:8087;
}

访问:http://127.0.0.1/test

重定向到:http://192.168.2.96/test/

访问:http://127.0.0.1/test/

http://192.168.2.96:8087/test/

访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/test/login

4、测试4

location /test/ {
     
    proxy_pass http://192.168.2.96:8087/define;
}

访问:http://127.0.0.1/test

重定向到http://192.168.2.96/test/

访问:http://127.0.0.1/test/

http://192.168.2.96:8087/define

访问:http://127.0.0.1/test/login

#define与login之间不会有/ ,会直接拼接起来
http://192.168.2.96:8087/definelogin

5、测试5

location /test{
     
    proxy_pass http://192.168.2.96:8087/;
}

访问:http://127.0.0.1/test

http://192.168.2.96:8087/

访问:http://127.0.0.1/test/

http://192.168.2.96:8087//

访问:http://127.0.0.1/test/login

http://192.168.2.96:8087//login

6、测试6

location /test {
     
    proxy_pass http://192.168.2.96:8087/define/;
}

访问:http://127.0.0.1/test

http://192.168.2.96:8087/define/

访问:http://127.0.0.1/test/

http://192.168.2.96:8087/define//

访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/define//login

7、测试7

location /test/ {
     
    proxy_pass http://192.168.2.96:8087/define/;
}

访问:http://127.0.0.1/test

重定向到: http://127.0.0.1/test/

访问:http://127.0.0.1/test/

http://192.168.2.96:8087/define/

访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/define/login

#结论

1、proxy_pass 后的URL符合 protocol://ip:port 同时结尾不加/,则nginx会代理匹配路径部分,否则不代理匹配路径,同时自动添加不匹配路径”部分”,比如/test/login的/login部分

#参考

1、https://blog.csdn.net/shichen501/article/details/81003099


你可能感兴趣的:(Linux,Nginx)