2015-06-18 60 views
0

我在我的服務器上安裝了gitlab。服務器有2個網卡,用於外部網絡和內部網絡。問題是,在gitlab頁面上,像組頭像​​這樣的元素具有絕對路徑,當我從外部網絡訪問頁面時,會看到與內部網絡的鏈接。爲什麼gitlab在頁面上使用絕對URL

例子。我的服務器有2個IP,用於內部網絡192.168.104.112和外部網絡173.194.113.2。在gitlab設置(gitlab.yml)我設置地址192.168.104.112。然後,我在瀏覽器中打開地址173.194.113.2,無法看到任何項目圖像,因爲所有圖像都具有到內部網絡的絕對路徑,如https://192.168.104.112/uploads/project/avatar/3/av.jpg

爲什麼絕對路徑用於圖像?他們爲什麼不用HTTP請求的地址替換它?

我找不到解決方法。

+0

你有沒有在gitlab的設置中設置地址爲'173.194.113.2'的原因? –

+0

我無法從內部網絡連接到'173.194.113.2'。所以我把地址設置爲'173.194.113.2'時遇到同樣的問題。 – gomons

+0

我想你不應該問「爲什麼這樣做?」,而是「如何在這些條件下使用它?」您是否可以使用DNS服務器來提供內部IP地址從內部網絡和外部IP地址向公衆查詢? – hfs

回答

1

現在有GitLab issue #2952這個問題,目前沒有解決方案。

+0

我認爲它會在沒有解決的情況下關閉。 gitlab在包中包含gitlab-ci,dns用於決定哪個服務客戶端想要使用的名稱。此外,gitlab發送給客戶的郵件包含gitlab的鏈接。在這種情況下,DNS服務器是最舒適的解決方案。 – gomons

+0

我編輯了gitlab源碼來修復圖像的絕對路徑。但這不僅是解決不同IP問題。 DNS服務器解決了我遇到的所有問題。 – gomons

相關問題