Apache-2.2

如何使用 apache 和 hgweb 配置 mercurial 訪問控制?

  • January 17, 2017

我已經設置了一個 mercurial repo,在 OS X 上使用 apache+wsgi+hgweb 提供服務。

它現在對任何在正確埠號上偶然發現我的伺服器的人完全開放。

我該如何設置它,以便只有擁有我批准的使用者名+密碼對的人才能從 repo 中提取和/或推送?

我知道如何使用 ssh 很容易地實現這一點,但在這種特定情況下,要求是解決方案不需要在機器上為我想授予 repo 訪問權限的每個人定義完整的使用者帳戶。

假設您已經擁有 VirtualHost 並在其下放置了您的目錄hgweb.wsgi,您需要在該目錄下添加以下內容:

AuthType Basic
AuthName "Mercurial Repositories Restricted Access"
AuthUserFile /path/to/hg_passwords_file
Require valid-user

接下來,您應該使用該htpasswd工具創建hg_passwords_file類似的內容:

htpasswd -c hg_passwords_file username

對於第一個使用者(並按要求輸入密碼)。

對於其他使用者,請省略-c將它們添加到文件中,而不是重新創建文件。

引用自:https://serverfault.com/questions/238427