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

Re: trailing slash on repository roots, and 301s

From: Will Meyer <will_at_bracketstyle.org>
Date: 2006-01-04 19:58:50 CET

Thanks again for the info, couple additional points:

 - I do have SSL enabled but the problem exists regardless

 - when I use curl on your server I also get the redirect, but am thinking
perhaps the server is doing something differently with the PROPFIND vs. the
GET, since your server does NOT return a 301 when a PROPFIND is issued, at
least not as I can tell by sniffing what the tortoise client is doing (i.e.
when the client sends the PROPFIND /svn/tortoisesvn the server does not
respond with a redirect)

 - I do have straight-ahead http-auth applied to the entire web server that
is supporting the webdav subversion access, if that may be relevant. Should
I disable this and use the mod instead? Like I said my other client works,
and obviously straight browser access is ok.

 - against your server, the native svn client works fine, partly because it
first issues the PROPFIND on /svn/repo (no trailing slash) , the server
responds with an auth-required, the client then sends the auth, but that
next url is of the form PROPFIND /svn/repo/!svnblah blah, so it never has
the actual opportunity to get the redirect back (never sends the /svn/repo
once it's authenticated), and doesn't get it ont he initial request

 - against my server, the svn client has the problem -- it ignores the
trailing slash, does not send it to the server, the server responds with a
301, and the client does not follow it.

So to recap, with the svn client:
 - your server responds with an auth-required and no redirect when sending
PROPFIND /svn/root
 - my server respnds with an auth-required AND a redirect when sending
PROPFIND /svn/root
 - either way, the svn client and the tortoise client don't follow these
redirects, and ignore it if you specify a trailing slash

At the end of the day I feel like if the client (svn I guess at this point)
would just pass the trailing slash on to the server in the resource request,
this would all work. In lieu of that, it almost looks like there must be
some way to tell the server not to send 301s back on PROPFIND resource
requests. I guess it must have something to do with the mods ont eh server
and isn't realy a Tortoise thing. The one tortoise thing here would be to
request that it follow redirects (same for the svn client) and to not ignore
trailign slashes when the user specifies them. SmartSVN does all this, for
what that's worth.

So I guess I need to take this to the svn group, lemme know if you have any
obvious ideas and thanks again very much for the help.

Will

On 1/4/06, Rainer Müller <mueller_rainer@gmx.de> wrote:
>
> Will Meyer wrote:
> > Thanks for the response Rainer. So hitting your server works fine, but
> > not mine. I am using the RC1 client, server is apache on linux. The
> > client sends a PROPFIND /svn/tortoisesvn request, and the tigris server
> > responds correctly, whereas on my server it responds with a 301 to (the
> > equivalent of) /svn/tortoisesvn/. Is "tortoisesvn" the root of a
> > repository (am assuming it is)?
>
> I think it is. And without a trailing slash I get a 301, too. I just
> tested this
> with curl.
>
> D:\>curl -I --user guest:guest
> http://tortoisesvn.tigris.org/svn/tortoisesvn
> HTTP/1.1 301 Moved Permanently
> [...]
> Location: http://tortoisesvn.tigris.org/svn/tortoisesvn/
>
> With the slash, I get a 200 OK:
>
> D:\>curl -I --user guest:guest
> http://tortoisesvn.tigris.org/svn/tortoisesvn/
> HTTP/1.1 200 OK
>
> tigris.org runs "SVN/1.1.1 mod_auth_svn/0.1", but that should not make a
> difference if you are running a newer version.
>
> >
> > My relevant server configuration is below. Does anyone know of a way to
> > control whether apache redirects to / for directory resources? I
> > suppose that is a svn/apache question and not a tortoise question...
> > However, I would think the tortoise client should let me pass the
> > trailing slash myself (and not strip it off), which theoreticaly would
> > let this work.
> >
> > Any additional thoughts?
> >
> > Alias /svn "/var/svn"
> >
> > <Directory "/var/svn">
> > Order allow,deny
> > Allow from all
> > Options Indexes MultiViews
> > AllowOverride None
> > Require valid-user
> > SSLRequireSSL
> > </Directory>
>
> Oh, I have overlooked that you are using https://. You said you sniffed it
> without SSL. So I assume it does not matter.
> But you also said in your first mail you don't have the issue with
> SmartSVN
> (which uses Java but I don't know which svn libraries they use). Have you
> tried
> with the official svn command line client? Since TSVN and the svn cli
> client use
> the same Subversion libraries this would affect both if the problem is
> there.
>
> HTH, Rainer
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tortoisesvn.tigris.org
> For additional commands, e-mail: users-help@tortoisesvn.tigris.org
>
>
Received on Wed Jan 4 20:07:31 2006

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.