Instead of ... SVNPath /var/svn/repos ... it should be ... SVNParentPath /var/svn/repos ... to access the repository testrepos under /var/svn/repos with command like: tfoerste@nhh221 ~/tmp $ svn checkout http://localhost/svn/repos/testrepo A testrepo/trunk A testrepo/trunk/urandom.c A testrepo/branches A testrepo/tags Checked out revision 1. without the modification I got: tfoerste@nhh221 ~/tmp $ svn checkout http://localhost/svn/repos/testrepo svn: PROPFIND request failed on '/svn/repos/testrepo' svn: PROPFIND of '/svn/repos/testrepo': 500 Internal Server Error (http://localhost) and in the log file of apache2 I read: [Fri Feb 04 11:07:54 2005] [error] [client 127.0.0.1] (20014)Error string not specified yet: Can't open file '/var/svn/repos/format': No such file or dectory [Fri Feb 04 11:07:54 2005] [error] [client 127.0.0.1] Could not fetch resource information. [500, #0] [Fri Feb 04 11:07:54 2005] [error] [client 127.0.0.1] Could not open the requested SVN filesystem [500, #2] [Fri Feb 04 11:07:54 2005] [error] [client 127.0.0.1] Could not open the requested SVN filesystem [500, #2] Reproducible: Always Steps to Reproduce: 1. 2. 3.
looking into the 47_mod_dav_svn.conf, I don't see any errors. I talk there about SVN repositories. that is, specifically one and only one repository per configuration part. I didn't gave a multi-svn-repository example where SVNParentPath is applicable. Do you want a multi-svn-repository example?
oh yes, I have more than one project in the repository, actually 2: nhh221 /etc/apache2/conf/modules.d # ls /var/svn/repos/ testrepo workspace Here is my working config: nhh221 /etc/apache2/conf/modules.d # cat /etc/apache2/conf/modules.d/47_mod_dav_svn.conf <IfDefine SVN> <IfModule !mod_dav_svn.c> LoadModule dav_svn_module extramodules/mod_dav_svn.so </IfModule> <Location /svn/repos> DAV svn SVNParentPath /var/svn/repos AuthzSVNAccessFile /var/svn/conf/svnaccess Satisfy Any Require valid-user AuthType Basic AuthName "Subversion repository" AuthUserFile /var/svn/conf/svnusers </Location> <IfDefine SVN_AUTHZ> <IfModule !mod_authz_svn.c> LoadModule authz_svn_module extramodules/mod_authz_svn.so </IfModule> </IfDefine> </IfDefine> The files svnaccess and svnusers I filled with the appropriate defifitions.
2 is not really much as I'm having 10 (ten) different repositories in /var/db/svn. However, I didn't know about SVNParentPath right before this bug report ;-) mod_dav_svn (as well as all other *newly* written apache module ebuilds) usually REQUIRE at least apache-2.0.52-r3. As of your pasted config, I see, that you're using an older version. Why? The new configuration example, as well as a newly introduced AUTHZ_SVN define for /etc/conf.d/apache2 will go into new ebuild release 1.1.3-r1.
I use apache 2.0.52: tfoerste@nhh221 ~ $ qpkg -I -v -nc apache net-www/apache-2.0.52-r1 tfoerste@nhh221 ~ $ qpkg -I -v -nc -f /etc/apache2/conf/modules.d/47_mod_dav_svn.conf dev-util/subversion-1.1.1-r3
OH! Oooookay. I was talking about: * net-www/apache-2.0.52-r3, * dev-util/subversion-1.1.3-r1 and * www-apache/mod_dav_svn-1.1.3. You see, in the - yet testing-masked - versions, the apache module stuff has been splitted up from the subversion ebuild. I've taken your comments into account for a new mod_dav_svn-1.1.3-r1 release (masked for testing, see bug #76457).