文章詳情頁
nginx反向代理 使用多個location url 匹配到不同主機的不同服務,出現404問題
瀏覽:96日期:2024-06-24 16:52:51
問題描述
現有兩個服務應用地址:192.168.5.20:5080 jenkins192.168.5.20:2080 gitlab
想在192.168.0.161(另外一臺機器)上部署nginx反向代理,配置兩個location,分別指向以上兩個地址,但總會出現404錯誤。
如下配置:
現象:從瀏覽器訪問:192.168.5.161/jenkins時:瀏覽器地址欄變為:192.168.5.161/login?from=%2F頁面顯示404
目的:訪問192.168.5.161/jenkins時,瀏覽器url地址不變,頁面被轉發到192.168.5.20:5080,即jenkins所在的服務上。請問改如何改配置呢?
問題解答
回答1:如果你的 Jenkins / GitLab 不支持配置成在 URL 路徑里加個東西的話,那么不要再這樣嘗試了。nginx 可以做到重定向重寫,但是網頁里還可能會有絕對路徑的鏈接。就算你把網頁都重寫了,網頁還是可能通過 JavaScript 構造成錯誤的鏈接。
你可以配置兩個域名(vhosts),分別用來提供不同的服務。
排行榜
