apache2.4反向代理到nginx gitlab伺服器
我目前正在我的樹莓派 4 8GB 上執行基於 apache 2.4 網路伺服器的 owncloud 伺服器(在dietpi 7.3 上工作),效果很好我有一個公共域設置並使用letsencrypt 創建證書。我現在還想在這個 pi 上設置一個 gitlab 伺服器,該 gitlab 伺服器正在工作並且可以通過它的 IP 地址和埠(192.168.1.234:1234)在我的本地網路內訪問。我已經設置好並執行
external_url
了。/etc/gitlab/gitlab.rb``127.0.0.1:1234``gitlab-ctl reconfigure
我現在想從 apache 伺服器配置一個反向代理以指向 gitlab NGINX(編輯澄清:反向代理應該從相對 url(在我的情況下為 mydomain.com/gitlab))伺服器工作,所以我添加了文件並將以下內容添加到文件中
gitlab.conf
:/etc/apache2/sites-available/
<VirtualHost *:80> ServerName mydomain.com ProxyRequests off <Location /gitlab> ProxyPass http://localhost:1234 ProxyPassReverse http://localhost:1234 </Location> </VirtualHost> <VirtualHost *:443> ServerName mydomain.com # Certificate SSLEngine on SSLCertificateFile /etc/letsencrypt/live/mydomain.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/mydomain.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/mydomain.com/fullchain.pem <Location /gitlab> ProxyPass http://localhost:1234 ProxyPassReverse http://localhost:1234 </Location> </VirtualHost>
問題是這不起作用..去 mydomain.com/gitlab 只會給我留下404 Not Found
(當然,
systemctl restart apache2
當我更改配置中的某些內容時,我也總是重新啟動 apache2,並且我還將站點添加到 apache 伺服器,a2ensite gitlab.conf
並且我還啟用了模組proxy
,proxy_http
並且a2enmod
)我現在也很可能會面臨更多問題,例如在 gitlab 中不顯示正確的 URL 等等,但我對如何解決這些問題有一個大致的了解,並希望先解決這個問題,一旦我遇到就開始處理它們他們。
網際網路上的其他資源並沒有太大幫助,因為我在嘗試時發現沒有任何幫助,因此非常感謝任何幫助或洞察力。
/傑克船長
由於您正在代理localhost,因此 nginx 無法在任何地方找到Host標頭,並且您的 gitlab 安裝似乎是非預設虛擬主機。嘗試添加
ProxyPreserveHost On
進入你的 apache 配置。到兩個虛擬主機部分。