关于访问的url带/与不带/的区别

来源:6-7 配置nginx反向代理实例

乃好

2020-10-20

老师您好,我都是按照课程中的内容来配置的,

课程中的配置:

upstream back_end{
        server 192.168.1.72:8080 weight=2 max_conns=1000 fail_timeout=10s max_fails=3;
        keepalive 32;
        keepalive_requests 80;
        keepalive_timeout 20s;
}
 
server{
        listen 80;
        server_name proxy.gx.edu;
 
        location /proxy{
                proxy_pass http://back_end/proxy;
        }
}

在访问的时候发现了这样的问题,

当我结尾带/时,可以正常访问

http://img1.sycdn.imooc.com/szimg/5f8ece39097c810404280083.jpg


当我结尾不带/时,404

http://img.mukewang.com/szimg/5f8ece4d09164f4c09320176.jpg

上游服务器异常日志如下:

2020/10/17 14:26:41 [error] 32603#0: *72 open() "/opt/nginx/html/proxy" failed (2: No such file or directory), client: 192.168.1.105, server: , request: "GET /proxy HTTP/1.0", host: "back_end"


请老师解惑

写回答

1回答

酷田

2020-11-13

这个问题的根源是localtion后面有斜线和没有是有区别的,可以参考这个文档,里面解释的非常清楚,还有实际例子,可以看一下

https://blog.csdn.net/u010509052/article/details/105455813

1
1
乃好
非常感谢!
2020-11-15
共1条回复

Nginx体系化深度精讲 给开发和运维的刚需课程

快速精通Nginx1.17 ,体系与深度并存,轻松搞定企业级痛点问题

661 学习 · 170 问题

查看课程