Is possible? I'd troubles with SVN clients the inability to access the repository using the following error message:
Repository moved permanently to 'http://svn.example.com/test/' please relocate
Basically added the '/' towards the finish from the path I had been attempting to access, it simply strips them back again, and shows exactly the same error message. My configuration file appears like:
<VirtualHost *> ServerName svn.example.com # Normal VirtualHost stuff here <Location /svn> # Uncomment this make it possible for the repository DAV svn SVNParentPath /some/path/to/databases # Setup mod_authz_svn, etc, etc here </Location> </VirtualHost>
Note: This works. But when I alter the Place to just
/ it reduces again using the error above. Can you really make use of the root directory, or am I missing something here? Opera shows the repository listing fine when serving the databases from the root.
As another person stated, this only appears to become an problem inside named virtual hosts... Anybody have wise ideas why?
The issue is that you're while using document root also because the repository root (I am not accusing you, this will just work, however it does not).
Try pointing the
SVNParentPath directives to various physical locations, therefore the resulting config file need to look such as this (abbreviated):
<VirtualHost *:80> DocumentRoot /home/svn.example.com/docroot <Location /> SVNParentPath /home/svn.example.com/svnroot SVNListParentPath on </Location> </VirtualHost>
Also, as @Nigel Jewell states, remove that Rewrite block, for sanity.
Ongoing from comments to these answer, I have attempted also having a VirtualHost:
<VirtualHost 127...1:80> <Location /> DAV svn SVNPath /repository AuthType Fundamental AuthName "Repository authentication" AuthUserFile /repository/.svn-auth AuthzSVNAccessFile /repository/.svn-access Satisfy All Require valid-user </Location> </VirtualHost>
and it is working, I'm able to see the repository with opera and may can get on using the svn command line client.
I wound up using mod_rewrite succesfully to rewrite all use of the main directory into
/svn, hence accessing the databases from
/repository_title. For reference, this is actually the configuration I wound up with:
# Rewrite / into /svn to prevent errors that appear to happen while using the root # for databases. RewriteEngine On # Subdirectories that needs to be utilized directly, ie. trac # /svn ought to be here to prevent redirect loops RewriteCond % !^/(tracsvn)/ RewriteRule ^/(.*)$ /svn/$1 [PT]
Ok, I believe we now have found who responsible: named virtual hosts :)
With this particular configuration:
<VirtualHost dork.test> <Location /> DAV svn SVNPath /repository AuthType Fundamental AuthName "Repository authentication" AuthUserFile /repository/.svn-auth AuthzSVNAccessFile /repository/.svn-access Satisfy All Require valid-user </Location> </VirtualHost>
after i run the command
svn ls http://dork.test I acquired this error:
svn: Server sent unpredicted return value (405 Method Not Permitted) in reaction to PROPFIND request '/'
So apparently there's an problem when one attempts to enable mod_dav_svn within the root directory of the named virtual host...