2016-05-26 1 views
-1

J'ai récemment été chargé d'héberger un serveur git sous Linux. Je suis très nouveau dans le monde de Linux, donc je me suis battu juste pour arriver là où je suis aujourd'hui. Je suis au point où j'ai créé un dépôt nu et je peux le voir en utilisant GitWeb (hébergé sur Apache). Comme je peux y naviguer avec GitWeb, j'ai pensé que ma configuration du serveur apache et de git était correcte, mais je ne peux toujours pas cloner le dépôt sur une machine distante. En fonction de la configuration d'Apache, j'obtiens une erreur 403 Forbidden ou une erreur 404 lors de la tentative de clonage.Comment rendre mon référentiel git HTTP accessible

Je ne suis pas sûr si mon référentiel git n'est pas configuré correctement, ma configuration apache est mauvaise, ou la sécurité du dossier le rend inaccessible. Cela pourrait être plusieurs choses.

J'ai depuis enlevé GitWeb afin que je puisse travailler avec les configurations de git et d'apache les plus simples possibles. Je suis sûr qu'il y a beaucoup de raisons différentes pour mes problèmes, donc je demande plus de quelques mauvaises configurations communes qui pourraient être le coupable.

Voici quelques parties de ma configuration apache. Mon dépôt est situé à/opt/git

<VirtualHost *:80> 
ServerName gitserver 
DocumentRoot /opt/git 
<Directory /opt/git> 
    Options ExecCGI +FollowSymLinks +SymLinksIfOwnerMatch 
    AllowOverride All 
    order allow,deny 
    Allow from all 
</Directory> 
ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/ 
</VirtualHost> 

<Directory "/opt/git"> 
Options Indexes FollowSymLinks 
AllowOverride None 
Order allow,deny 
Allow from all 

</Directory> 

Comme je l'ai dit, j'ai pu (avec une configuration différente) Consultez ma page GitWeb, si apache est certainement en cours d'exécution et à un moment donné VirtualHost a été correctement configuré , mais quelque chose ne va vraiment pas.

Merci!

Répondre

0

On dirait que ce n'était pas un problème avec apache, c'est un problème avec git. Je avais besoin pour exécuter la commande git update-server-info

J'étais confus parce que This Documentation a fait croire que la commande irait automatiquement, puisque je viens de copier les crochets d'échantillons. Je suppose que vous devez exécuter la commande chaque fois que vous créez un nouveau référentiel?