Я пытаюсь установить Gerrit на CentOS
, используя HTTP-аутентификацию, но получая «Service Temporarily Unavailable
», когда я попытался получить к нему доступ «http://x.x.x.x/gerrit/login/
».Невозможно настроить проверку кода Gerrit: сервис временно недоступен
Похоже, что это проблема с конфигурацией с Gerrit/Apache. Я попытался изменить настройки, но не повезло.
В соответствии с моим пониманием, так как мой Gerrit находится на HTTP-аутентификации, поэтому Apache должен передать аутентификацию Gerrit, и оба должны работать на разных портах (что я пытаюсь сделать).
Я рассмотрел другие вопросы здесь (another question) для HTTP auth для Gerrit, но не смог пройти.
Это мой gerrit.config
[gerrit]
basePath = git
canonicalWebUrl = http://localhost:8081/gerrit
[database]
type = h2
database = db/ReviewDB
[index]
type = LUCENE
[auth]
type = HTTP
[sendemail]
smtpServer = localhost
[container]
user = gerrit2
javaHome = /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.79.x86_64/jre
[sshd]
listenAddress = *:29418
[httpd]
listenUrl = http://x.x.x.x:8081/
[cache]
directory = cache
Это мой конец /etc/httpd/conf/httpd.conf
<VirtualHost *:80>
ServerName www.example.org
ProxyRequests Off
ProxyVia Off
ProxyPreserveHost On
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Location /gerrit/login/>
AuthType Basic
AuthName "Gerrit Code Review"
Require valid-user
AuthUserFile '/etc/httpd/gerrit.htpasswd'
</Location>
AllowEncodedSlashes On
ProxyPass /gerrit http://localhost:8081/gerrit
</VirtualHost>
Спасибо, вы можете, дайте мне знать причину этого изменения? – Garry
Извините, я не знаю подробностей об Apache. Однако после того, как я изменил настройку, как показано выше, она работает для меня :) –