码迷,mamicode.com
首页 > 其他好文 > 详细

Nginx里的proxy_pass

时间:2016-05-08 06:57:56      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:nginx   proxy_pass   反向代理   

技术分享



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

技术分享


同理,输入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。比较老实。


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


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

本文出自 “生活就是等待戈多” 博客,请务必保留此出处http://chenx1242.blog.51cto.com/10430133/1771112

Nginx里的proxy_pass

标签:nginx   proxy_pass   反向代理   

原文地址:http://chenx1242.blog.51cto.com/10430133/1771112

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!