6 votes

GitLab CE 7 derrière un hôte virtuel Debian 8/Apache 2 : impossible d'accéder aux ressources

Sur Debian 8.0, j'essaie de faire en sorte qu'Apache 2.4.10 gère une installation GitLab CE 7.10 Omnibus en tant qu'hôte virtuel. en tant qu'hôte virtuel.

Fixation et objectif

Apache 2 est déjà configuré et fait fonctionner plusieurs hôtes virtuels qui ressemblent tous à vhost.example.com .

Je veux configurer Apache et GitLab pour que git.example.com obtient géré par Apache pour afficher l'interface web de GitLab.

À cette fin, j'ai suivi la procédure décrite dans https://stackoverflow.com/a/25809733/4352108 .

Numéro

Je suis capable de la page principale de GitLab sur git.example.com mais je ne peux accéder à aucune autres ressources telles que les CSS ou les icônes. Les journaux d'Apache indiquent quatre erreurs qui ressemblent toutes à ceci :

[Sun May 10 20:24:57.146329 2015] [authz_core:error] [pid 4141] [client 1.2.3.4:80] AH01630: client denied by server configuration: /opt/gitlab/embedded/service/gitlab-rails/public/assets/application-TOKEN.css, referer: http://git.example.com/

Après avoir cherché sur le web et essayé plusieurs modifications, je suis resté bloqué ici. Quelqu'un a-t-il une idée de la façon dont on peut résoudre ce problème ?

Fichiers de configuration

En outre, voici les fichiers de configuration "intéressants" que j'utilise :

/etc/apache2/sites-enabled/git.conf :

<VirtualHost git.example.com:80>
    ServerAdmin admin@example.com
    DocumentRoot /opt/gitlab/embedded/service/gitlab-rails/public
    ServerName git.example.com
    ServerAlias git.example.com

    ProxyPreserveHost On

    <Location /opt/gitlab/embedded/service/gitlab-rails/public>

        Order deny,allow
        Allow from all
        Options FollowSymLinks
        Require all granted

        ProxyPassReverse http://localhost:8080
        ProxyPassReverse http://git.example.com
    </Location>

    RewriteEngine on
    RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
    RewriteRule .* http://localhost:8080%{REQUEST_URI} [P,QSA]

    ErrorDocument 404 /404.html
    ErrorDocument 422 /422.html
    ErrorDocument 500 /500.html
    ErrorDocument 503 /deploy.html

    LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b" common_forwarded
    ErrorLog  /${APACHE_LOG_DIR}/gitlab.error.log
    CustomLog /${APACHE_LOG_DIR}/gitlab.forwarded.log common_forwarded
    CustomLog /${APACHE_LOG_DIR}/gitlab.access.log combined env=!dontlog
    CustomLog /${APACHE_LOG_DIR}/gitlab.log combined
</VirtualHost>

/etc/gitlab/gitlab.rb :

external_url 'http://git.example.com'
web_server['external_users'] = ['http']
nginx['enable'] = false

Quelques mods Apache activés intéressants :

proxy
proxy_http

1voto

Cela a marché pour moi :

<VirtualHost *:80>
  ServerName git.example.com
  ServerSignature Off
  DocumentRoot /opt/gitlab/embedded/service/gitlab-rails/public
  ProxyPreserveHost On

  <Location />
    Require all granted
    ProxyPassReverse http://127.0.0.1:8080
    ProxyPassReverse http://git.example.com/
  </Location>

  RewriteEngine on
  RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
  RewriteRule .* http://127.0.0.1:8080%{REQUEST_URI} [P,QSA]

  # needed for downloading attachments
  DocumentRoot /opt/gitlab/embedded/service/gitlab-rails/public

</VirtualHost>

et essayer de changer les utilisateurs de http à www-data

0voto

Trt Trt Points 193

Dans votre VirtualHost fichier :

Remplacer

Order deny,allow
Allow from all

Par

Require all granted

Et votre problème est résolu

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X