在nginx中配置proxy_pass代理转发时,一种情况是proxy_pass后面只有IP和端口,没有“/”;另一种是proxy_pass后面有“/”或还有其它路径。下面举例说明下几种情况:
server {
listen 80;
server_name 127.0.0.1;
location /test1/ {
proxy_pass http://127.0.0.1:8080;
}
# 访问http://127.0.0.1/test1/test.html =代理到=》 http://127.0.0.1:8080/test1/test.html
location /test2/ {
proxy_pass http://127.0.0.1:8080/;
}
# 访问http://127.0.0.1/test2/test.html =代理到=》 http://127.0.0.1:8080/test.html
location /test3/ {
proxy_pass http://127.0.0.1:8080/lala;
}
# 访问http://127.0.0.1/test3/test.html =代理到=》 http://127.0.0.1:8080/lalatest.html 注意斜杠没了
location /test4/ {
proxy_pass http://127.0.0.1:8080/lala/;
}
# 访问http://127.0.0.1/test4/test.html =代理到=》 http://127.0.0.1:8080/lala/test.html
location /test5 {
proxy_pass http://127.0.0.1:8080;
}
# 访问http://127.0.0.1/test5/test.html =代理到=》 http://127.0.0.1:8080/test3/test.html
location /test6 {
proxy_pass http://127.0.0.1:8080/;
}
# 访问http://127.0.0.1/test6/test.html =代理到=》 http://127.0.0.1:8080//test.html 注意双斜线
location /test7 {
proxy_pass http://127.0.0.1:8080/lala;
}
# 访问http://127.0.0.1/test7/test.html =代理到=》 http://127.0.0.1:8080/lala/test.html
location /test8 {
proxy_pass http://127.0.0.1:8080/lala/;
}
# 访问http://127.0.0.1/test8/test.html =代理到=》 http://127.0.0.1:8080/lala//test.html 注意双斜杠
}