J'ai installé subversion et apache sur mon serveur.
Si je le parcoure via mon navigateur Web, cela fonctionne très bien ( http://svn.host.com/reposname ). Cependant, si je passe une commande sur ma machine, j'obtiens l'erreur suivante:
Command: Checkout from http://svn.host.com/reposname, revision HEAD, Fully recursive, Externals included
Error: Repository moved permanently to 'http://svn.host.com/reposname/'; please relocate
J'ai vérifié le journal des erreurs d'apache, mais il ne dit rien. (il le fait maintenant - voir modifier)
Mes référentiels sont stockés sous: / var / www / svn / repos /
Mon site Web est stocké sous: / var / www / vhosts / x / ...
Voici le fichier conf pour le sous-domaine:
<Location />
DAV svn
SVNParentPath /var/www/svn/repos/
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /var/www/svn/auth/svn.htpasswd
Require valid-user
</Location>
L'authentification fonctionne bien.
Est-ce que quelqu'un sait ce qui pourrait causer cela?
-- Modifier
J'ai donc redémarré apache (à nouveau) et l'ai réessayé et maintenant il me donne un message d'erreur, mais cela n'aide pas vraiment. Quelqu'un a une idée de ce que cela signifie?
[Wed Mar 31 23:41:55 2010] [error] [client my.ip.he.re] Could not fetch resource information. [403, #0]
[Wed Mar 31 23:41:55 2010] [error] [client my.ip.he.re] (2)No such file or directory: The URI does not contain the name of a repository. [403, #190001]
- Modifier 2
Si je fais svn info
ça ne donne rien d'utile:
[root@server domain.com]# svn info http://svn.domain.com/repos/
Username: username
Password for 'username':
svn: Repository moved permanently to 'http://svn.domain.com/repos/'; please relocate
J'ai également essayé de faire un checkout local ( svn checkout file:///var/www/svn/repos/reposname
) et cela fonctionne bien (l'ajout / la validation fonctionne également très bien). Il semble donc que cela ait quelque chose à voir avec apache.
Quelques autres informations:
- J'utilise CentOs 5.3
- Plesk 9.3
- Subversion, version 1.6.9 (r901367)
- Modifier 3
J'ai essayé de déplacer les référentiels, mais cela n'a fait aucune différence.
selinux est désactivé, ce n'est pas non plus le cas.
la source
Options +indexes
cela ne devrait pas vraiment faire quoi que ce soit d'utile dans un emplacement svn.Réponses:
J'ai eu ça récemment ... mais il s'est avéré que j'avais oublié l'url :)
Une chose que vous devez faire est de vous assurer que votre emplacement svn ne chevauche aucun site Web apache-servable. c'est-à-dire, si vous définissez votre DocumentRoot pour être / www, et votre emplacement svn pour être / www / svn ... alors vous avez des problèmes - Apache ne saura pas avec quoi il est censé être servi (c'est-à-dire les gestionnaires spéciaux svn , ou un gestionnaire http direct).
Voir l' entrée FAQ pour cela .
la source
Alias svn /repositories
, puis tout configuré<Location /svn/ >
. Le problème était exactement comme dans le lien FAQ, bien que mystérieusement, cela a fonctionné parfaitement pendant un mois, puis s'est arrêté un mercredi après-midi à l'heure du thé. Si votre référentiel est à "/" alors vous aurez un chevauchement avec votre directive DocumentRoot.Essayez de vérifier
http://svn.host.com/reposname/
(notez la barre oblique de fin).la source
Consultez ce site Web: http://www.rkrishardy.com/2009/12/subversion-fix-svn-copy-causes-repository-moved-permanentl/
L'alias pointe probablement vers le même endroit que congfiguré est dav_svn.mod, et il y a des conditions de concurrence entre apache et dav_svn lors de l'accès au dépôt.
C'est mieux expliqué dans l'article fourni
Dans dav_svn.conf:
Dans apache_site.conf
la source
J'ai une configuration vhost avec mon dépôt sur
svn.mydomain.com/sites/
mon vhost avait un bloc DocumentRoot et Location. La suppression de la racine du document a résolu ce problème.la source
J'ai eu cette erreur lorsque j'ai placé par erreur mon dépôt sous l'arborescence html servie par Apache, sur ma machine FC14 avec des installations de subversion et apache basées sur RPM.
SVNParentPath (dans /etc/httpd/conf.d/subversion.conf) doit pointer vers un répertoire en dehors de DocumentRoot.
J'ai déménagé mon repo et le problème a disparu.
J'espère que cela t'aides.
la source
Je sais que c'est vieux mais je l'ai trouvé sur Google car j'avais le même problème. Assurez-vous que le port 7080 n'est pas bloqué par le pare-feu de l'ordinateur ou du serveur
la source
Il semble que vous ne le fassiez pas
svn checkout
, mais plutôtsvn update
dans un référentiel existant (?).Si oui, procédez comme suit:
svn switch --relocate http://svn.host.com/reponame
la source
Déplacé en permanence? Pouvez-vous quelque chose comme HTTPFox ou quelque chose et vérifier qu'Apache donne le bon code d'état pour votre référentiel (devrait l'être
200/OK
). Je crois que le code d'état301
correspond à une URL qui a "bougé de façon permanente" et qui ressemble à ce à quoi le client svn fait référence.la source
http://svn.server.com/repos
) cela fonctionne très bien, j'obtiens "repos - Révision 0: /" et tout. Le problème se produit uniquement lorsque j'effectue un paiement.Peut-être un peu tard dans la conversation, mais je le vois lorsque j'utilise un alias dans la configuration d'apache pour gérer le dernier '/': Alias / svn / path / to / svn /
la source
Vous devez également vous assurer qu'aucune directive Alias ne correspond à l'emplacement du dépôt svn. J'ai eu ça récemment quand j'avais
où l'alias et la directive location s'appliquent au même chemin.
la source
J'ai juste eu un problème similaire non pas lors du CHECKING OUT, mais lors d'un COMMIT.
La raison? ce dossier "obj \ Debug \ TempPE", pour une raison étrange que le dossier "TempPE" ne soit pas possible de le COMMITER dans le référentiel
Solution? ... COMMITER tous les autres dossiers du projet un par un et supprimer cet emplacement du serveur SVN
la source