Eu estou lutando para configurar o GitLab 8 com o Apache 2.4 no RHEL 7.
Até agora, tenho duas opções que são insatisfatórias:
Ou eu uso o seguinte arquivo de configuração do Apache e tenho GitLab funcionando sem problemas, mas todos os outros aplicativos são inacessíveis:
<VirtualHost *:80>
ServerName server_name
DocumentRoot /opt/gitlab/embedded/service/gitlab-rails/public
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
ProxyPassReverse / http://localhost:8081/
<Location />
Require all granted
</Location>
# Custom log file locations
ErrorLog /var/log/httpd/gitlab_error.log
CustomLog /var/log/httpd/gitlab_access.log combined
</VirtualHost>
Ou eu tento o seguinte, e todo o resto está funcionando, posso acessar a página de login do GitLab (através de http://server_name/gitlab/users/sign_in
), mas ele falha quando tenta se conectar a http://server_name/[stuff]
, sem /gitlab
:
<VirtualHost *:80>
ServerName server_name
DocumentRoot /opt/gitlab/embedded/service/gitlab-rails/public
ProxyPass /gitlab http://localhost:8080/
ProxyPassReverse /gitlab http://localhost:8080/
ProxyPassReverse /gitlab http://localhost:8081/
<Location /gitlab>
Require all granted
</Location>
# Custom log file locations
ErrorLog /var/log/httpd/gitlab_error.log
CustomLog /var/log/httpd/gitlab_access.log combined
</VirtualHost>
Estou longe de ser um especialista no Apache, então provavelmente estou sentindo falta de algo óbvio, mas não consigo definir o que está errado aqui.
Qualquer ajuda seria muito apreciada!
Editar:
Eu mudei minha configuração do Apache para redirecionar a coisa em 8088
port:
<VirtualHost *:8088>
ServerName localhost
ServerAlias server-rd
DocumentRoot /opt/gitlab/embedded/service/gitlab-rails/public
ProxyPass / http://localhost:8080
ProxyPassReverse / http://localhost:8080
ProxyPassReverse / http://localhost:8081
<Location />
Require all granted
</Location>
# Custom log file locations
ErrorLog /var/log/httpd/gitlab_error.log
CustomLog /var/log/httpd/gitlab_access.log combined
</VirtualHost>
Eu também habilitei 8088
port no SELinux.
Outros aplicativos funcionam bem, mas ainda não consigo acessar o GitLab, recebo um erro "Não é possível conectar" ao meu navegador.
Eu tentei me conectar com telnet
, apenas para ver:
telnet localhost 8088
Trying ::1...
Connected to localhost.
Escape character is '^]'.
GET /
<html><body>You are being <a href="http://localhost:8080/users/sign_in">redirected</a>.</body></html>Connection closed by foreign host.
Então está dando certo, o problema parece estar depois desse primeiro passo. Eu tentei obter a página da Web com wget
:
wget http://localhost:8088
--2015-11-06 16:16:58-- http://localhost:8088/
Résolution de localhost (localhost)... ::1, 127.0.0.1
Connexion vers localhost (localhost)|::1|:8088...connecté.
requête HTTP transmise, en attente de la réponse...302 Found
Emplacement: http://localhost:8088/users/sign_in [suivant]
--2015-11-06 16:16:58-- http://localhost:8088/users/sign_in
Reusing existing connection to [localhost]:8088.
requête HTTP transmise, en attente de la réponse...502 Proxy Error
2015-11-06 16:16:58 ERREUR 502: Proxy Error.
Algumas coisas estão em francês, desculpe, mas pelo menos as coisas mais importantes aparecem claramente: ERREUR 502: Proxy Error.
Eu verifiquei, mod_proxy
está instalado e ativado, então não sei o que fazer a seguir.