描述:在使用路由器進行埠對映的時候,如果使用和nginx 監聽的埠一樣是不存在問題的 但是如果使用了其他埠 就會出現無法訪問的問題。
例如:訪問 會直接跳轉到
通過web端的開發者工具 可以看到進行了一次301重定向:並且我們可以看到location跳轉到了nginx 監聽的埠
後來我去檢視對應location的配置是沒有進行301重定向的配置。所以第一反應就是前端進行了一次301重定向,但是和開發人員對接了下並沒有做這種操作。所以後續通過查詢資料定位到了根本原因:
在訪問帶目錄的url時,如果末尾不加斜槓(「/」),nginx缺省會自動加上,其實是返回了乙個301跳轉 並且nginx預設使用了絕對路徑重定向模式,所以response headers返回的頭部會帶ip+nginx監聽的埠。
解決方案:
使用相對路徑解決location帶ip+埠的問題
在server裡配置absolute_redirect off;
後面再去訪問 返回的location報文如下:
後續根據location裡的內容自動跳轉到新的url
至此問題解決。
SpringMVC重定向導致的記憶體洩漏分析
public string test string redirecturl 專案內乙個熱點介面,使用了如上 做 的重定向操作,而讓人沒想到的是 這樣子的寫法會有記憶體洩漏的風險 如果不處理,那麼隨著記憶體會耗盡。最終會導致頻繁的fullgc,而oom gc overhead limit exceed...
Docker的埠對映和nginx安裝
1.通過埠對映我在阿里雲上面輸入上面的語句,然後就可以通過網域名稱 5000埠號訪問了這樣無法通過網域名稱 埠號訪問 因為5001在docker裡面不能訪問 同樣因為5001在docker裡面不能訪問 可以訪問 up 50 seconds 5000 tcp,0.0.0.0 5001 5001 tcp...
Docker容器中nginx的埠對映
一台機器下,乙個docker容器執行nginx,並將容器中nginx的埠對映到主機的80埠的命令,如下,docker run it p 80 80 nginx測試a 宿主機192.168.0.108訪問192.168.0.108 80,如下,curl 192.168.0.108 80 doctype...