[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: DAV fails in <Directory>, works in <Location> [as it should]

From: Ross Boylan <ross_at_biostat.ucsf.edu>
Date: 2007-10-22 20:46:56 CEST

On Sun, 2007-10-21 at 18:18 -0500, Ryan Schmidt wrote:
> On Oct 21, 2007, at 17:02, Ross Boylan wrote:
>
> > I am using virtual hosts in Apache. Initially I had
> >
> > <Directory /usr/local/var/svn>
> > Deny from all
> > Allow from 127.0.0.1 ::1/128 192.168.40.0/24
> > # enable svn
> > DAV svn
> > SVNPATH /usr/local/var/svn
> > </Directory>
> > as part of the site file. However, after a successful import, I did
> > $ svn co http://svn.betterworld.us/gnosis/parse/trunk parse
> > and got
> > svn: REPORT request failed on '/usr/local/var/svn/!svn/vcc/default'
> > svn: Unusable URI: it does not refer to this repository
> > The apache logs showed
> > [Sun Oct 21 14:03:40 2007] [error] [client 192.168.0.2] Could not
> > parse
> > 'src-path' URL. [500, #190001]
> > [Sun Oct 21 14:03:40 2007] [error] [client 192.168.0.2] Unusable
> > URI: it
> > does not refer to this repository [500, #190001]
> >
> > The FAQ mentioned a somewhat similar looking problem (but on OS-X; I'm
> > on Linux) and suggested trying file:/// access. That worked.
> >
> > I then moved the commands to this section:
> > <Location />
> > # enable svn
> > DAV svn
> > SVNPATH /usr/local/var/svn
> > </Location>
> > and reloaded. Now it works fine.
> >
> > Should this be the way things are? The Apache docs for DAV
> > indicate it
> > should be used in a directory context, which included both <Location>
> > and <Directory>.
> >
> > Also, I initially tried putting the DAV and SVNPATH directives in the
> > virtual host specification without either <Location> or <Directory>.
> > Apache rejected that as an erroneous configuration.
>
> I would say yes, that's how things should be.
>
> If you don't use a <Location> directive, how will Apache know under
> which URL you would like your repository to be made available?
> <Location /> means "when accessing a URL under /, observe the
> following" which is what you want.
I thought it might default to /, but of course if the directives aren't
in a <Location> or <Directory> section apache won't even know if they
apply to URLs or filepaths.
>
> By contrast, <Directory /usr/local/var/svn> means "when something
> accesses the directory /usr/local/var/svn, observe the following" but
> you haven't yet told Apache to use that directory in response to SVN
> commands. At least that's how it seems to me.
Quite right. My original <Directory> formulation tells it to use
SVNPATH when it gets to the directory, but it can only get to that
directory if it's already processed the SVNPATH.

It all makes perfect sense now; thanks for helping me see that.
Ross

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Oct 22 20:47:27 2007

This is an archived mail posted to the Subversion Users mailing list.