nginx location proxy pass
阿新 • • 發佈:2018-09-23
oca 必須 目標 訪問 nginx反向代理 ref 反向 targe 部署
nginx: 192.168.1.23作為nginx反向代理機器 目標機器192.168.1.5上部署一個8090端口的nginx [root@localhost conf.d]# cat test.conf server { listen 80; server_name localhost; location / { root /var/www/html; index index.html; } location /proxy/ { proxy_pass http://192.168.1.5:8090/; } } 訪問http://192.168.1.23/proxy/就會被代理到http://192.168.1.5:8090/, 瀏覽器的url是http://192.168.1.23/proxy/不變, 目標機器上無需存在proxy目錄(curl http://192.168.1.23/proxy 可以發現是302,301重定向) 如果:proxy_pass配置的url後面不加"/" [root@localhost conf.d]# cat test.conf server { listen 80; server_name localhost; location / { root /var/www/html; index index.html; } location /proxy/ { proxy_pass http://192.168.1.5:8090; } } 那麽訪問http://192.168.1.23/proxy或http://192.168.1.23/proxy/,都會失敗! 這樣配置後,訪問http://192.168.1.23/proxy/就會被反向代理到http://192.168.1.5:8090/proxy/,目標機必須有proxy目錄
快速記憶:proxypass最後如果帶 / ,則代理到目標機就沒有location後面的目錄, 不帶 / , 到目標機後攜帶location後面的目錄,一起帶過去了
nginx location proxy pass