2017-09-25 2 views
0

J'utilise GitLab CE comme référentiel de développement d'entreprise, et je voudrais utiliser gitlab-pages pour servir des documents statiques.Servir des pages avec apache

J'ai installé l'intégration de CI pour les pages, et il fonctionne (je peux voir adresse du site dans le projet « Pages » paramètres, travail CI est OK)

J'utilise apache 2 proxy comme inverse, si NGINX est désactivé, le DNS est configuré: enregistrement CNAME pour "docs.example.org" et un enregistrement pour "* .docs.example.org", tous deux pointant vers le serveur gitlab, nommé Ulysse.

L'enregistrement du serveur Gitlab dans le DNS est "gitlab.exemple.org", il est diffusé via apache avec une configuration VirtualHost.

Comment puis-je configurer apache pour servir ces pages?

Merci pour votre aide!

+0

Qu'avez-vous essayé jusqu'ici pour essayer de mettre les choses en marche? – ajtrichards

+0

Je pense que je dois écrire un fichier de configuration apache pour cela, mais je n'ai trouvé aucun exemple pour un tel fichier de configuration. L'application gitlab-pages écoute sur l'adresse 127.0.0.1:8090. L'instance GitLab fonctionne bien. – frague

Répondre

0

Je suppose que j'essaie de servir les pages sur le même serveur que gitlab avec la même adresse IP, apache2 est utilisé comme équilibreur de charge avec un hôte virtuel wild-card. (Troisième cas dans la doc officielle: https://docs.gitlab.com/ee/administration/pages/index.html)

J'ai créé un nouveau fichier-pages.conf pour gitlab ce apache2:

<VirtualHost *:80> 
    ServerName docs.example.org 
    ServerAlias *.docs.example.org 

    ProxyPreserveHost On 
    ProxyPass "/" "http://127.0.0.1:8090/" 
    ProxyPassReverse "/" "http://127.0.0.1:8090/ 

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

</VirtualHost> 

Cela fonctionne presque: les http://[user].docs.example.org/[project]/ sites sont servis avec le réglage de la RELATIVE_URLS = True au SSG (perlican dans mon cas), mais l'adresse du domaine affichée dans Projet> Paramètres> Pages ne le sont pas.