Nginx转发路径拼接规则

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

Nginx转发路径拼接规则_第1张图片

1.当加上/ 配置如下,假设请求是http://58.249.55.68:8099/admin/having/test.do
这转发路径为http://127.0.0.1/having/test.do
location ^~ /admin /  {
proxy_pass http://admin;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}

2.不写/ 配置如下,假设请求是http://58.249.55.68:8099/admin/having/test.do
这转发路径为http://127.0.0.1/admin/having/test.do
location ^~ /admin {
proxy_pass http://admin;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
 

你可能感兴趣的:(nginx)