Nginx里的proxy_pass

简介:

wKiom1cuERvhJPCbAAAi9ck0bdg329.png



在这里我故意把nba的主页设置成新浪体育主页,把sports设置成新浪nba的主页,保存退出之后,检查配置文件并且重新启动nginx服务,把浏览器的缓存删除掉,试验一下localhost/nba的时候,果然出现的就是新浪体育的主页,有图有真相:

wKioL1cuEvvxwP1rAAH8Q8M2Tik048.png


同理,输入localhost/sports的时候,输出的是新浪nba的界面,可见基本配置成功。


更进一步,我们把配置文件更改一下,改成这样

1、location /test/ {
                proxy_pass http://lnsjb.com;
     } 

2、location /test/ {
                proxy_pass http://lnsjb.com/;
     } 

上面两种配置,区别只在于proxy_pass转发的路径后是否带 “/” 


那么这个时候,如果我要请求localhost/test/123.jpg这个图片的时候,在第一个配置下,会自动反向代理成http://lnsjb.com/test/test/123.jpg。比较老实。这一点有点类似于root


而在第二个配置下,会自动反向代理成http://lnsjb.com/123.txt,即直接访问root资源。这一点有点类似于alias。


【总结】在nginx中配置proxy_pass时,如果是按照^~匹配路径时,要注意proxy_pass后的url最后的/,当加上了/,相当于是绝对根路径,则nginx不会把location中匹配的路径部分代理走;如果没有/,则会把匹配的路径部分也给代理走。



 本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/1771112

相关文章
|
11月前
|
应用服务中间件 nginx
Nginx:proxy_pass和try_files 301跳转带了端口
Nginx:proxy_pass和try_files 301跳转带了端口
373 0
|
网络协议 应用服务中间件 API
Nginx反向代理配置之proxy_pass
Nginx反向代理配置之proxy_pass
254 0
Nginx反向代理配置之proxy_pass
|
前端开发 应用服务中间件 nginx
nginx配置proxy_pass(超简单公式记忆法)
nginx配置proxy_pass(超简单公式记忆法)
|
应用服务中间件 nginx
在nginx中配置proxy_pass
在nginx中配置proxy_pass
141 0
|
应用服务中间件 nginx
nginx服务器的反向代理proxy_pass配置方法
nginx服务器的反向代理proxy_pass配置方法
313 0
|
应用服务中间件 nginx
Nginx服务器的反向代理proxy_pass配置方法讲解
 Nginx服务器的反向代理proxy_pass配置方法讲解 这篇文章主要介绍了Nginx服务器的反向代理proxy_pass配置方法讲解,包括经常被提到的url的/问题的相关说明,需要的朋友可以参考下 就普...
4712 0
|
前端开发 Java 应用服务中间件
nginx反向代理location和proxy_pass斜杠踩坑
当下前后端项目分离是一种大的趋势,那么前后端分离之后用什么来做它们之前的信息传递桥梁呢,使用最多的就是nginx的反向代理了。在进行nginx反向代理配置的时候,location和proxy_pass中的斜线会造成各种困扰,有时候多一个或少一个斜线,就会造成完全不同的结果。
|
网络协议 应用服务中间件 API
Nginx反向代理配置之proxy_pass
Nginx反向代理配置之proxy_pass
254 0
|
应用服务中间件 nginx