gpt4 book ai didi

linux - CentOS 上的 Gerrit 安装不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 11:19:30 26 4
gpt4 key购买 nike

我已经在我的centos服务器上安装了gerrit,但是我的认证有问题。我想为给定组中的 centos 用户提供身份验证权限。基本上,gerrit 组中的每个用户都应该可以使用其密码登录。

但是,当我访问 gerrit 链接时,当我收到以下消息时,会重定向到 gerrit:8081/login:

The HTTP server did not provide the username in the Authorization header when it forwarded the request to Gerrit Code Review.

If the HTTP server is Apache HTTPd, check the proxy configuration includes an authorization directive with the proper location, ensuring it ends with '/':

你有什么提示为什么这不起作用吗?

/etc/httpd/conf/httpd.conf 文件的 VirtualHost 部分看起来像这样:

<VirtualHost gerrit:8081>
ServerName gerrit

ProxyRequests Off
ProxyVia Off
ProxyPreserveHost On

<Proxy *>
Order deny,allow
Allow from all
</Proxy>

<Location "/login/">
AuthType Basic
AuthName "Gerrit Code Review"
AuthBasicProvider file
AuthUserFile /etc/passwd
Require valid-user
</Location>


AllowEncodedSlashes On
ProxyPass /r http://localhost:8081/r nocanon
</VirtualHost>

以及 gerrit.config 文件:

[gerrit]
basePath = /repos
canonicalWebUrl = http://freshattitude.eu:8081/
[database]
type = mysql
hostname = localhost
database = gerrit
username = gerrit
[auth]
type = HTTP
emailFormat = {0}@example.com
[sendemail]
smtpServer = localhost
smtpUser = root
[container]
user = gerrit
javaHome = /usr/java/jdk1.7.0_25/jre
[sshd]
listenAddress = *:29418
[httpd]
listenUrl = http://*:8081/
[cache]
directory = cache

最佳答案

你犯了一些错误。一方面,你必须在 gerrit.config

中设置
httpd.listenUrl = proxy-http://127.0.0.1:8081/

以便 Gerrit 知道它前面的代理。

此外,您的 Apache 虚拟主机必须监听不同的端口(至少当两种服务在同一台服务器上运行时)。事实上,我想知道您是如何同时启动两者的;-)

因此,为端口 80 而不是端口 8081 设置一个 apache 虚拟主机。然后用户将连接到 http://freshattitude.eu/。 .

最后,再次在 gerrit.config 中,您必须修复 canonicalWebUrl 并删除 :8081,因为您使用代理,这就是您告诉 Gerrit 其对外的 URL 是什么的方式。

我认为你应该通过Gerrit docs on reverse proxy config一次。

之后你将得到 Gerrit 只监听本地主机端口 8081 而 apache 监听端口 80(当然,你可能想使用 SSL,然后在 中使用 proxy-https 变体gerrit.config).

关于linux - CentOS 上的 Gerrit 安装不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19198736/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com