nginx代理Location和proxy_pass后加不加/的区别

#常用反向代理配置方式
location /test/ {
    proxy_pass http://192.168.2.96:8087/;
}
1
2
3
访问:http://127.0.0.1/test

重定向到: http://127.0.0.1/test/
1
访问:http://127.0.0.1/test/

http://192.168.2.96:8087/
1
访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/login
1
#测试有无 /(斜杠)的区别
1、测试1
location /test {
    proxy_pass http://192.168.2.96:8087;
}
1
2
3
访问:http://127.0.0.1/test

http://192.168.2.96:8087/test
1
访问: http://127.0.0.1/test/

http://192.168.2.96:8087/test/
1
访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/test/login
1
2、测试2
location /test{
    proxy_pass http://192.168.2.96:8087/define;
}
1
2
3
访问:http://127.0.0.1/test

http://192.168.2.96:8087/define
1
访问:http://127.0.0.1/test/

http://192.168.2.96:8087/define/
1
访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/define/login
1
3、测试3
location /test/ {
    proxy_pass http://192.168.2.96:8087;
}
1
2
3
访问:http://127.0.0.1/test

重定向到:http://192.168.2.96/test/
1
访问:http://127.0.0.1/test/

http://192.168.2.96:8087/test/
1
访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/test/login
1
4、测试4
location /test/ {
    proxy_pass http://192.168.2.96:8087/define;
}
1
2
3
访问:http://127.0.0.1/test

重定向到http://192.168.2.96/test/
1
访问:http://127.0.0.1/test/

http://192.168.2.96:8087/define
1
访问:http://127.0.0.1/test/login

#define与login之间不会有/ ,会直接拼接起来
http://192.168.2.96:8087/definelogin
1
2
5、测试5
location /test{
    proxy_pass http://192.168.2.96:8087/;
}
1
2
3
访问:http://127.0.0.1/test

http://192.168.2.96:8087/
1
访问:http://127.0.0.1/test/

http://192.168.2.96:8087//
1
访问:http://127.0.0.1/test/login

http://192.168.2.96:8087//login
1
6、测试6
location /test {
    proxy_pass http://192.168.2.96:8087/define/;
}
1
2
3
访问:http://127.0.0.1/test

http://192.168.2.96:8087/define/
1
访问:http://127.0.0.1/test/

http://192.168.2.96:8087/define//
1
访问:http://127.0.0.1/test/login

http://192.168.2.96:8087/define//login
1
7、测试7
location /test/ {
    proxy_pass http://192.168.2.96:8087/define/;
}
1
2
3
访问:http://127.0.0.1/test

重定向到: http://127.0.0.1/test/
1
访问:http://127.0.0.1/test/

http://192.168.2.96:8087/define/
1
访问:http://127.0.0.1/test/login

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值