Click to See Complete Forum and Search --> : [RESOLVED] SVN died


Kudose
08-28-2008, 11:13 AM
'ello all.

My repo was working just fine ... I went to update this morning and I get error 405.

64.126.xxxx - - [28/Aug/2008:08:07:38 -0600] "OPTIONS /repo HTTP/1.1" 200 181 "-" "SVN/1.5.1 (r32289) neon/0.28.2"
64.126.xxxx- - [28/Aug/2008:08:07:39 -0600] "PROPFIND /repo HTTP/1.1" 405 526 "-" "SVN/1.5.1 (r32289) neon/0.28.2"
64.126.xxxx - - [28/Aug/2008:08:07:39 -0600] "OPTIONS / HTTP/1.1" 302 230 "-" "SVN/1.5.1 (r32289) neon/0.28.2"
64.126.xxxx - - [28/Aug/2008:08:07:50 -0600] "OPTIONS /repo HTTP/1.1" 200 181 "-" "SVN/1.5.1 (r32289) neon/0.28.2"
64.126.xxxx - - [28/Aug/2008:08:07:50 -0600] "PROPFIND /repo HTTP/1.1" 405 526 "-" "SVN/1.5.1 (r32289) neon/0.28.2"
64.126.xxxx - - [28/Aug/2008:08:07:51 -0600] "OPTIONS /repo HTTP/1.1" 200 181 "-" "SVN/1.5.1 (r32289) neon/0.28.2"
64.126.xxxx - - [28/Aug/2008:08:07:51 -0600] "PROPFIND /repo HTTP/1.1" 405 526 "-" "SVN/1.5.1 (r32289) neon/0.28.2"
64.126.xxxx - - [28/Aug/2008:08:07:51 -0600] "OPTIONS / HTTP/1.1" 302 230 "-" "SVN/1.5.1 (r32289) neon/0.28.2"


I don't even know where to begin because some requests get code 200 (OK) and others get 405.

TIA!

bpat1434
08-28-2008, 11:50 PM
405 is "Method Not Allowed" which would seem to say that PROPFIND is being blocked by something (mod_security maybe?). If you can SSH to the server, I'd try to manually do a "svn list http://myserver.com/svn/myproject" and see what it spews out at you.

What does your httpd.conf file look like dealing with the SVN repos?

Kudose
08-29-2008, 12:27 PM
# svn list http://phpdealer.com/repo
svn: PROPFIND request failed on '/repo'
svn: PROPFIND of '/repo': 405 Method Not Allowed (http://phpdealer.com)


:(

# svn list repo
svn: 'repo' is not a working copy
[root@aarondev phpdealer.com]# ls
httpsdocs private statistics
cgi-bin error_docs old releases subdomains
conf httpdocs pd repo web_users
[root@aarondev phpdealer.com]# cd repo/
[root@aarondev repo]# ls
conf dav db format hooks locks README.txt
[root@aarondev repo]# svn list .
svn: '.' is not a working copy
[root@aarondev repo]#


[root@aarondev conf]# cat vhost.conf
<Location /var/www/vhosts/phpdealer.com/repo>
DAV svn
SVNPath /var/www/vhosts/phpdealer.com/repo
AuthName "phpDealer"
AuthType Basic
AuthUserFile /var/www/vhosts/phpdealer.com/repo/conf/passwd
Require valid-user
</Location>


Thanks for your help. :)

bpat1434
08-29-2008, 12:37 PM
The Location directive takes the "path" relative to the URL root. So if phpdealer.com is the URL, and you reach your SVN repo by browsing to phpdealer.com/repo then the Location needs to be "/repo" not "/var/www/vhosts/phpdealer.com/repo".

Locations are from the URL, Directory is from the hard disk.

So for example:

<Location /repo>
DAV svn
SVNPath /var/www/vhosts/phpdealer.com/repo
AuthName "phpDealer"
AuthType Basic
AuthUserFile /var/www/vhosts/phpdealer.com/repo/conf/passwd
Require valid-user
</Location>

<Directory /var/www/vhosts/phpdealer.com/repo>
Order allow,deny
Allow from all
</Directory>

Hope that helps.

Kudose
08-29-2008, 12:45 PM
Buahahahahaha.

That's the insanity from how easy the fix was.

Thanks a million!

[note]
I had to recreate that file ... for some reason Plesk deleted it.

Kudose
08-29-2008, 12:48 PM
Locations are from the URL, Directory is from the hard disk.

That's very useful and I will have to remember that.