0

我在 ubuntu 上安装了 Gerrit,它使用带有 apache2 的 HTTP 身份验证。作为查看器,我们希望将 Gitblit 用作 Gerrit 中的插件。我已经在这里找到了插件,并按照那里的安装说明进行操作。

由于 Gerrit 中的所有其他插件都可以正常工作,例如 blabla.com/gerrit/plugins/gitiles/ 或其他插件,所以当我尝试浏览 blabla.com/gerrit/plugins/gitblit/ 时,我总是会收到登录请求(另外文档文件夹)。

我认为我在 apache2 配置中有任何错误或遗漏,但到目前为止我还没有找到正确的。

在为 Gerrit 安装 apache2 之后(通过指南),我没有接触 apache2.conf,我只是在 apache2 的 mods-enable 子文件夹中添加了一个 gerrit.conf,内容如下:

ProxyPass           /gerrit  http://localhost:8081/gerrit nocanon
ProxyPassReverse    /gerrit  http://localhost:8081/gerrit nocanon
ProxyRequests       Off

<Proxy http://localhost:8081/gerrit>
  Order deny,allow
  Allow from all
</Proxy>

<Location /gerrit>
  AuthType Digest
  AuthName "gerrit"
  AuthUserFile /etc/apache2/.htdigest
  Require valid-user
</Location>

当我使用我们的地址/gerrit 访问 Gerrit 时,我被要求首先使用 htdigest 添加的权限。

有什么想法吗?为什么 Gitblit 要求登录并且不接受任何登录?(我完全是 Apache 身份验证的新手)

4

1 回答 1

0

http://gitblit.com/setup_authentication.html Gitblit 仅支持以下 authtype:

LDAP authentication
Windows authentication
PAM authentication
Htpasswd authentication
HTTP header authentication
Redmine auhentication
Salesforce.com authentication
Servlet container authentication

但是您的身份验证类型是摘要,您可以尝试通过以下步骤将身份验证类型切换为 htpasswd:

  1. 添加一个新的身份验证文件 sudo htpasswd -c /etc/apache2/.htpasswd log_name_xxx
  2. 修改 /etc/apache2/... 中的 gerrit.conf

    AuthType Basic AuthName "gerrit" AuthUserFile /etc/apache2/.htpasswd 需要有效用户

  3. 重启apache2

    sudo 服务 apache2 重启

如果还有其他问题,请告诉我。希望它有用。啊啊啊

于 2018-07-05T03:16:41.240 回答