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

Nginx学习——proxy_pass

时间:2019-12-11 17:31:43      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:配置   服务   orm   blank   表达   表达式   name   strong   特殊情况   

参考官网:http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass

定义:用来设置被代理服务器的协议(http或https)和地址(域名或者IP地址加端口),还可以设置可选的URI

例:proxy_pass http://localhost:8000/uri/

URI按如下规则传送给后端被代理服务器:

1、如果proxy_pass使用了URI(就是有/),请求路径与loction路径的匹配部分将被 替换 为proxy_pass中定义的URI

location /name/ {
  proxy_pass http://127.0.0.1/remote/;
}

2、如果proxy_pass没有使用URI,发给被代理服务器的请求路径和客户端发起的请求路径相同,不会被修改

location /some/path/ {
  proxy_pass http://127.0.0.1;
}

特殊情况:

1、location 使用了正则表达式,这种情况下指令不应该带有URI。

2、使用rewrite指令改变了URI,并使用相同配置处理请求(break):

location /name/ {
rewrite /name/([^/]+) /users?name=$1 break;
proxy_pass http://127.0.0.1;
}

这种情况下,指令定义的URI将被忽略,改变后的URI将被发送给后端服务器。

Nginx学习——proxy_pass

标签:配置   服务   orm   blank   表达   表达式   name   strong   特殊情况   

原文地址:https://www.cnblogs.com/yb38156/p/12023483.html

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