Nginx之location中反向代理proxy_pass配置

燦兒哈察蘇發表於2020-11-05

  專案中要使用nginx作為前端服務的負載均衡,在進行nginx配置過程中,對於在負載均衡配置反向代理proxy_pass引數,proxy_pass配置url引數,在url後面有加"/"或者沒有加"/",在經過反向代理後,代理路徑結果是不一樣的。示例說明:

假如前端訪問地址:http://172.16.10.110/nginx/index.html

在location配置如下:

location ^~/nginx/{
      proxy_pass:http://172.16.10.120:8080/;
}

經過nginx反向代理後,後臺實際訪問的服務路徑是 http://172.16.10.120:8080/index.html,也就是說在有加"/"的情況下,代理路徑是不會把location匹配的部分路徑加到代理路徑後面。

location ^~/nginx/{
      proxy_pass:http://172.16.10.120:8080;
}

經過nginx反向代理後,後臺實際訪問的服務路徑是 http://172.16.10.120:8080/nginx/index.html,也就是說在沒有加"/"的情況下,代理路徑會把location匹配的部分路徑加到代理路徑後面。

 

相關文章