Apache-2.2

通過 HTTPS 實現匿名拉取但經過驗證的使用者推送

  • March 12, 2015

基本上,我如何在 Mercurial Repository 中做到這一點?

目前,我已將 Apache 中的位置配置為需要 SSL、使用基本身份驗證並需要有效使用者。這有點多,因為我想允許匿名拉取,只需要推送者的基本身份驗證 - 現在需要使用者/密碼才能在 Web 瀏覽器中簡單地查看儲存庫。我希望始終需要 SSL,並且真的不想兩次託管同一個儲存庫(對於僅拉取具有不同的位置,而對於經過驗證的推送具有另一個位置)。

Ches Martin有一個不錯的部落格,詳細介紹了他如何根據您的要求設置 Mercurial。

<LimitExcept GET>
 require valid-user
</LimitExcept>

來自 Apache 配置的這個片段是允許匿名拉取(或瀏覽,如果通過 hgweb 發布)所需的一部分,但仍然需要推送通行證。

你要找的可能是 Apache 的LimitExcept指令。就像是:

<LimitExcept GET>
 Require valid-user
</LimitExcept>

因此,除了 GET 請求之外,其他任何事情都需要使用者/通行證。但我不了解 Mercurial,也不知道如何hg push完成。如果是 POST 請求,就可以了,但可能也是需要 POST 才能拉取。

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