Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Linux.debian : Subversion + apache 2

Posté par Rui AVELINO () le 12 mars 2008

Bonjour à tous,



Je suis sous Debian 4.0



J'ai besoin d'installer subversion et de le lier à apache 2



J'avais déjà un apache 2 qui tourne parfaitement sur la machine



J'ai fait les choses suivantes





apt-get install subversion subversion-tools



mkdir --p /var/svn/private

mkdir --p /var/svn/repositories

cd /var/svn/repositories

svnadmin create myrepository



apt-get install libapache2-svn

a2enmod dav_svn

/etc/init.d/apache2 reload





J'ai ensuite édité le fichier apache2.conf et j'ai rajouté à la fin





«location /svn»

DAV svn

SVNPath /var/svn/repositories/myrepository

# how to authenticate a user

AuthType Basic

AuthName "SVN : My Repository"

AuthUserFile /var/svn/private/myrepository.htpasswd

# our access control policy

AuthzSVNAccessFile /var/svn/private/myrepository.authz

«LimitExcept GET PROPFIND OPTIONS REPORT»

Require valid-user

«/LimitExcept»

«/location»









J'ai ensuite changé les droits d'accès:





chown -R www-data:www-data /var/svn/repositories

chmod -R 775 /var/svn/repositories

chown -R www-data:www-data /var/svn/private

chmod -R 775 /var/svn/private





J'ai ensuite créé les utilisateurs suivant et créer le fichier de droit pour subversion:



cd /var/svn/private/

htpasswd -cm myrepository.htpasswd myuser

touch /path/to/private/myrepository.authz





dans le fichier



[groups]

dev = myuser

[/]

@dev = rw

[/trunk]

@dev = rw

[/branches]

@dev = rw

[/tags]

@dev = rw





J'ai ensuite essayé de créé un projet :





svnadmin create /var/svn/repositories/example





Et la ... je bloque :(



impossible d'y accéder via mon url de base du serveur http://svn.monsite.com/svn/



Alors je me suis dit que le code ne devait pas aller dans apache2.conf mais dans le fichier qui définit mes virtualhost





«VirtualHost *:80»

SSLEngine off

ServerAdmin webmaster@monsite.com

DocumentRoot /var/www/devmp/

ServerName svn.monsite.com

ErrorLog /var/log/apache2/error.log

Alias /phpmyadmin /usr/share/phpmyadmin

«Directory /var/www/devmp/»

Options FollowSymLinks

«/Directory»



«location /svn»

DAV svn

SVNPath /var/svn/repositories/myrepository

# how to authenticate a user

AuthType Basic

AuthName "SVN : My Repository"

AuthUserFile /var/svn/private/myrepository.htpasswd

# our access control policy

AuthzSVNAccessFile /var/svn/private/myrepository.authz

«LimitExcept GET PROPFIND OPTIONS REPORT»

Require valid-user

«/LimitExcept»

«/location»

«/VirtualHost»





Mais ça marche pas mieux !

http://svn.monsite.com/svn/

toujours pas accessible ...



Et quand je tente des commandes du type:





svn import /var/svn/repositories/example file:///var/svn/repositories/example/examplev1 -m "initial import"





http://svn.monsite.com/svn/repositories/example/

http://svn.monsite.com/svn/repositories/

http://svn.monsite.com/svn/



Et j'ai des erreurs du type

The requested URL /svn/example/ was not found on this server.



Les autres sites fonctionnent sans problème (phpmyadmin etc ...) donc j'ai pas tout cassé apache2. Mais bon subversion marche pas :(



Vous pouvez m'aider?

> Lire le message (2 commentaires, moyenne: 1,5).  

Vous avez demandé le commentaire #913247.

Logs & more

Posté par Lol Zimmerli (Jabber id, page perso, ) le 12/03/2008 à 22:55. (lien). Évalué à 2.

Tout d'abord: que disent les logs? /var/log/apache2/error_log, /var/log/messages, etc?

Ensuite, après la création du repository 'exemple', as-tu fais un
chown -R www-data\: /var/svn/repositories/example ?

N'y a-t-il pas aussi des directives pour /svn dans /etc/apache2/mods-enabled/dav_svn.conf ?

Essaie sinon d'ajouter la directive
SVNAutoversioning on
après SVNPath
( http://svnbook.red-bean.com/en/1.2/svn.webdav.autoversioning(...) )

--
En fait, Bernardo n'était pas muet; c'est Zorro qui était sourd.
  • [^]Re: Logs & more

    Posté par Rui AVELINO () le 13/03/2008 à 11:07. (lien). Évalué à 1.

    Bonjour merci pour les conseils

    Oui j'ai relancer les droits sur les deux

    Et dans le doute je les ai refait:


    chown -R www-data\: /var/svn/repositories/example
    chown -R www-data\: /var/svn/repositories/myrepository


    Dans "/etc/apache2/mods-enabled" j'ai bien les modules de chargés


    dav.load -> ../mods-available/dav.load
    dav_svn.conf -> ../mods-available/dav_svn.conf
    dav_svn.load -> ../mods-available/dav_svn.load


    J'ai bien rajouté SVNAutoversioning on

    Après les vérifications et ajouts demandés j'ai un message d'erreur légèrement différent, lorsque je cherche à accéder à la page:

    Forbidden

    You don't have permission to access /svn/ on this server.


    Voici le log Error de Apache, par contre il n'y a rien dans le log de "message" à ce sujet.

    [Thu Mar 13 10:23:29 2008] [error] [client 82.XXX.XXX.XXX] Access denied: - GET svn:/
    [Thu Mar 13 10:23:29 2008] [error] [client 82.XXX.XXX.XXX] Access denied: - GET svn:/
    [Thu Mar 13 10:24:22 2008] [error] [client 82.XXX.XXX.XXX] Access denied: - GET svn:/repositories
    [Thu Mar 13 10:24:46 2008] [error] [client 82.XXX.XXX.XXX] Access denied: - GET svn:/repositories/myrepository
    [Thu Mar 13 11:00:23 2008] [error] [client 82.XXX.XXX.XXX] Access denied: - GET svn:/example
    [Thu Mar 13 11:00:33 2008] [error] [client 82.XXX.XXX.XXX] Access denied: - GET svn:/repositories/example