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

Re: file:// works, http:// doesn't. Did I offend?

From: Chris Thompson <ct_at_cthompson.com>
Date: 2002-08-15 19:21:01 CEST

On Thu, 15 Aug 2002, Karl Fogel wrote:
> Don't get a complex, Chris :-). It just means no one had an immediate
> answer. You're asking in the right place, though.

So, paranoid it is then. :)

> Can you describe your repository setup (include the relevant passages
> from httpd.conf), and the exact command lines you tried, and the
> printed error Subversion gave? The log output above is helpful, but
> we need more.

Repository was set up basically per INSTALL. Did ra_local first.

Redhat 7.1 box with linux 2.4.5 kernel, filesystem is XFS. Apache, apr and
apr-util are from CVS this past monday. I had to upgrade libtool to
whatever's newest on ftp.gnu.org. neon and db4 were new at that time too.

Download the .tar.gz, compile static, svn co of the very latest
(0.14.0-2916 from 8/8/02), recompile
shared libs. No --enable-maintainer-mode was used at either stage.

Created /home/svn/, set it owned by my ct user. As ct I did 'svnadmin create
/home/svn'. then did an svn import file:///home/svn/ somedir of some random
directory in my home dir just to test. Worked fine, went to bed.

Next day I tackled apache2, got it compiled fairly generically, only extra
module is mod_rewrite. Initially set it up on port 8888 as I wasn't ready to
lose my Apache 1.3 on port 80. With no vhosts I added

<Location />
   DAV svn
   SVNPath /home/svn
</Location>

to the bottom of the file. Fired her up and successfully did a 'svn co
http://localhost:8888/somedir'

So then I got crazy and moved apache to port 80, replicated all my virtual
hosts on there. Put the svn stuff in it's own vhost as such.

DavLockDB /tmp/DavLock

<VirtualHost *>
ServerName svn.logimeta.com
ServerAdmin zen@x4.net
DocumentRoot /home/svn
CustomLog /var/sites/svn.logimeta.com/logs/access combined
ErrorLog /var/sites/svn.logimeta.com/logs/error
<Location />
   DAV svn
   SVNPath /home/svn
</Location>

</VirtualHost>

I changed all the files in /home/svn to be owned by web.web, which is what
apache is running as.

With this setup I can check stuff in and out at will by using
file:///home/svn/ (as web, of course)

I can also check anything out that I like using http://svn.logimeta.com/

But when I try to do anything that writes to the repository, an import, a
commit, a copy, etc, the following happens...

[ct_at_zen ~]% svn import -m "" http://svn.logimeta.com/ txt text
svn: Apache got a malformed URI
svn:
The specified URI does not refer to this repository, so it is unusable.

where txt is a directory in my current directory and text is what I want to
call it in the repository.

the error log on this request is...

[Thu Aug 15 13:11:43 2002] [error] [client 216.68.162.236] Could not
CHECKOUT resource /!svn/bln/11. [409, #0]
[Thu Aug 15 13:11:43 2002] [error] [client 216.68.162.236] The activity href
could not be parsed properly. [409, #21114]
[Thu Aug 15 13:11:43 2002] [error] [client 216.68.162.236] (17)File exists:
The specified URI does not refer to this repository, so it is unusable.
[409, #21114]

and the access log shows

216.68.162.236 - - [15/Aug/2002:13:11:43 -0400] "OPTIONS / HTTP/1.1" 200 179
"-" "neon/0.21.3 SVN/0.14.0 (dev build)"
216.68.162.236 - - [15/Aug/2002:13:11:43 -0400] "MKACTIVITY
/!svn/act/98e51133-43a8-0310-af4d-a70af198926d HTTP/1.1" 201 293 "-"
"neon/0.21.3 SVN/0.14.0 (dev build)"
216.68.162.236 - - [15/Aug/2002:13:11:43 -0400] "PROPFIND / HTTP/1.1" 207
362 "-" "neon/0.21.3 SVN/0.14.0 (dev build)"
216.68.162.236 - - [15/Aug/2002:13:11:43 -0400] "PROPFIND /!svn/vcc/default
HTTP/1.1" 207 329 "-" "neon/0.21.3 SVN/0.14.0 (dev build)"
216.68.162.236 - - [15/Aug/2002:13:11:43 -0400] "CHECKOUT /!svn/bln/11
HTTP/1.1" 409 266 "-" "neon/0.21.3 SVN/0.14.0 (dev build)"

Please note that this request is made via http to the same box. I also have
svn compiled on my iBook under OS X 10.1.5 with upgraded libtool, and it
does exactly the same thing.

I also have not set up any kind of authentication on the repository yet,
though I plan to. I've left it off for now while I'm just testing.

The apache2 httpd.conf is largely the stock one they ship. I have changed
the user to run as to web, group web to match my old 1.3 setup. I'm loading
the mod_dav_svn and mod_rewrite modules.

A different vhost has a rewrite rule.

A different vhost has more traditional dav enabled.

<Location /store>
AuthType Basic
AuthName DAV
AuthUserFile .htpasswd
Dav On
<LimitExcept GET HEAD OPTIONS>
require user ct
</LimitExcept>
</Location>

Please note that none of this is in the svn vhost.

I have verified, and reverified that /home/svn and all files under it are
owned by web, group web, and have permissions for web to write.

So, now that I know I shouldn't be paranoid, any suggestions?

-- 
_______________
Chris Thompson
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Aug 15 19:21:32 2002

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

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