您好,登錄后才能下訂單哦!
proxy_pass:充當代理服務器,轉(zhuǎn)發(fā)請求
proxy_redirect:修改301或者302轉(zhuǎn)發(fā)過程中的Location。默認值為proxy_redirect default。
例:
location / {
proxy_pass http://192.168.8.46:8080/; #/結尾
#proxy_redirect default #此為默認值,加不加都一樣。
}
這樣代理到其它機器的8080端口,訪問的時候都沒問題,
Location: http://192.168.8.46/haha4/,瀏覽器的url地址欄也是http://192.168.8.46/haha4/
若:
location / {
proxy_pass http://192.168.8.46:8080;#去掉/
proxy_redirect off #修改默認值default為off
}
如果去掉最后的/以后,curl -I http://192.168.8.46/haha4 訪問
Location: http://192.168.8.46:8080/haha4/
瀏覽器訪問顯示的地址欄為http://192.168.8.46:8080/haha4/,(如果還是之前的,需要先刪緩存)
可以看到,真實的Location地址全部暴露出來的,這個時候就需要使用proxy_redirect修改這個Location
配置如下:
location / {
proxy_pass http://192.168.8.46:8080;
proxy_redirect http://192.168.8.46:8080/haha4/http://192.168.8.46/haha4/;
}
這樣,就能修改Location的地址,Location: http://192.168.8.46/haha4/,在瀏覽器里也是如此,就不會暴露端口號等信息,
當然,你還可以把Location弄到其它網(wǎng)站上去,例如
proxy_redirect http://192.168.8.46:8080/haha4/http://www.douban.com/;
然后瀏覽器就跳過去了。
總結:
一切幕后黑手就是
proxy_pass http://192.168.8.46:8080; 不加/結尾,只要把/加上,proxy_redirect 用默認值就OK了。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。