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

Re: Subversion reinstall

From: Rob Brandt <bronto_at_csd-bes.net>
Date: 2006-09-09 08:44:23 CEST

This is a Debian distro, so the .conf files are modular.

Here's apache2.conf:
----------------------------------------------------------------

ServerRoot "/var/www"

LockFile /var/lock/apache2/accept.lock

PidFile /var/run/apache2.pid

Timeout 300

KeepAlive On

MaxKeepAliveRequests 100

KeepAliveTimeout 15

<IfModule prefork.c>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 20
MaxRequestsPerChild 0
</IfModule>

<IfModule worker.c>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>

<IfModule perchild.c>
NumServers 5
StartThreads 5
MinSpareThreads 5
MaxSpareThreads 10
MaxThreadsPerChild 20
MaxRequestsPerChild 0
AcceptMutex fcntl
</IfModule>

User www-data
Group www-data

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

# Global error log.
ErrorLog /var/log/apache2/error.log

# Include module configuration:
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf

# Include all the user configurations:
Include /etc/apache2/httpd.conf

# Include ports listing
Include /etc/apache2/ports.conf

# Include generic snippets of statements
Include /etc/apache2/conf.d/[^.#]*

#Let's have some Icons, shall we?
Alias /icons/ "/usr/share/apache2/icons/"
<Directory "/usr/share/apache2/icons">
     Options Indexes MultiViews
     AllowOverride None
     Order allow,deny
     Allow from all
</Directory>

<IfModule mod_negotiation.c>
<IfModule mod_include.c>
     Alias /error/ "/usr/share/apache2/error/"

     <Directory "/usr/share/apache2/error">
         AllowOverride None
         Options IncludesNoExec
         AddOutputFilter Includes html
         AddHandler type-map var
         Order allow,deny
         Allow from all
         LanguagePriority en es de fr
         ForceLanguagePriority Prefer Fallback
     </Directory>

     ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var
     ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var
     ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var
     ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
     ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var
     ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var
     ErrorDocument 410 /error/HTTP_GONE.html.var
     ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var
     ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var
     ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
     ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var
     ErrorDocument 415 /error/HTTP_SERVICE_UNAVAILABLE.html.var
     ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var
     ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var
     ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var
     ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var
     ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var

</IfModule>
</IfModule>

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml

AccessFileName .htaccess

<Files ~ "^\.ht">
     Order allow,deny
     Deny from all
</Files>

UseCanonicalName Off

TypesConfig /etc/mime.types
DefaultType text/plain

HostnameLookups Off

IndexOptions FancyIndexing VersionSort

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

# This really should be .jpg.

AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^

DefaultIcon /icons/unknown.gif

ReadmeName README.html
HeaderName HEADER.html

IndexIgnore .??* *~ *# HEADER* RCS CVS *,t

AddEncoding x-compress Z
AddEncoding x-gzip gz tgz

AddLanguage da .dk
AddLanguage nl .nl
AddLanguage en .en
AddLanguage et .et
AddLanguage fr .fr
AddLanguage de .de
AddLanguage el .el
AddLanguage it .it
AddLanguage ja .ja
AddLanguage pl .po
AddLanguage ko .ko
AddLanguage pt .pt
AddLanguage no .no
AddLanguage pt-br .pt-br
AddLanguage ltz .ltz
AddLanguage ca .ca
AddLanguage es .es
AddLanguage sv .se
AddLanguage cz .cz
AddLanguage ru .ru
AddLanguage tw .tw
AddLanguage zh-tw .tw

LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es
sv tw

#AddDefaultCharset ISO-8859-1

AddCharset ISO-8859-1 .iso8859-1 .latin1
AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen
AddCharset ISO-8859-3 .iso8859-3 .latin3
AddCharset ISO-8859-4 .iso8859-4 .latin4
AddCharset ISO-8859-5 .iso8859-5 .latin5 .cyr .iso-ru
AddCharset ISO-8859-6 .iso8859-6 .latin6 .arb
AddCharset ISO-8859-7 .iso8859-7 .latin7 .grk
AddCharset ISO-8859-8 .iso8859-8 .latin8 .heb
AddCharset ISO-8859-9 .iso8859-9 .latin9 .trk
AddCharset ISO-2022-JP .iso2022-jp .jis
AddCharset ISO-2022-KR .iso2022-kr .kis
AddCharset ISO-2022-CN .iso2022-cn .cis
AddCharset Big5 .Big5 .big5
# For russian, more than one charset is used (depends on client, mostly):
AddCharset WINDOWS-1251 .cp-1251 .win-1251
AddCharset CP866 .cp866
AddCharset KOI8-r .koi8-r .koi8-ru
AddCharset KOI8-ru .koi8-uk .ua
AddCharset ISO-10646-UCS-2 .ucs2
AddCharset ISO-10646-UCS-4 .ucs4
AddCharset UTF-8 .utf8

AddCharset GB2312 .gb2312 .gb
AddCharset utf-7 .utf7
AddCharset utf-8 .utf8
AddCharset big5 .big5 .b5
AddCharset EUC-TW .euc-tw
AddCharset EUC-JP .euc-jp
AddCharset EUC-KR .euc-kr
AddCharset shift_jis .sjis

#AddType application/x-httpd-php .php
#AddType application/x-httpd-php-source .phps

AddType application/x-tar .tgz

<FilesMatch "\.shtml(\..+)?$">
     SetOutputFilter INCLUDES
</FilesMatch>

BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0

BrowserMatch "Microsoft Data Access Internet Publishing Provider"
redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^gnome-vfs" redirect-carefully
BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully

Include /etc/apache2/sites-enabled/[^.#]*

<VirtualHost *>
DocumentRoot "/var/lib/subversion"
ServerName subversion.amd64.csd-bes.net
<Directory "/var/lib/subversion">
allow from all
Options +Indexes
</Directory>
</VirtualHost>
---------------------------------------------------

Here's dav_svn.conf:

---------------------------------------------------
# dav_svn.conf - Example Subversion/Apache configuration
#
# For details and further options see the Apache user manual and
# the Subversion book.

# <Location URL> ... </Location>
# URL controls how the repository appears to the outside world.
# In this example clients access the repository as http://hostname/svn/

# <Location URL> ... </Location>
# URL controls how the repository appears to the outside world.
# In this example clients access the repository as http://hostname/svn/

<Location /test>

   # Uncomment this to enable the repository,
    DAV svn

   # Set this to the path to your repository
    SVNPath /var/lib/subversion/test

   # The following allows for basic http authentication. Basic
authentication
   # should not be considered secure for any particularly rigorous
definition of
   # secure.

   # to create a passwd file
   # # rm -f /etc/apache2/dav_svn.passwd
   # # htpasswd2 -c /etc/apache2/dav_svn.passwd dwhedon
   # New password:
   # Re-type new password:
   # Adding password for user dwhedon
   # #

    # Uncomment the following 3 lines to enable Basic Authentication
     AuthType Basic
     AuthName "Subversion Repository"
     AuthUserFile /etc/apache2/dav_svn.passwd

   # Uncomment the following line to enable Authz Authentication
   # AuthzSVNAccessFile /etc/apache2/dav_svn.authz

   # The following three lines allow anonymous read, but make
   # committers authenticate themselves.

   <LimitExcept GET PROPFIND OPTIONS REPORT>
     Require valid-user
   </LimitExcept>

</Location>
---------------------------------------------

There are a number of others that don't seem relevant...

Thanks.

Rob

Troy Curtis Jr wrote:
> On 9/8/06, Rob Brandt <bronto@csd-bes.net> wrote:
>> I am needing to reinstall subversion on my server. We wiped it clean
>> and reinstalled Debian Sarge (i386) and need to get svn up asap. Before
>> restoring the repositories, I want to make sure that I have a properly
>> installed system that can create and manage repositories like I had
>> before. That's where I'm stuck.
>>
>> I have the normal Debian package installed, v1.1.4-2. I was on v1.1.4
>> last time, so I am fine with that despite it's age. I am using apache2
>> with dav_svn. I believe that's working OK; at least apache will
>> start/reload without complaint. I can log in as the data user and
>> create a repository. I can browse to that repository via http - seeing
>> that it is at Revision 0 in typical fashion at
>> http://repositorydomain/test:
>> ---------------------------------
>> Revision 0: /
>>
>> Powered by Subversion version 1.1.4 (r13838).
>> ---------------------------------
>>
>> However, I can't import any files to it. I've created a very simple
>> test structure to import, /trunk/testfile/txt. Using Tortoise from my
>> workstation, I get:
>>
>> Error PROPFIND request failed on /test
>> Error PROPFIND of '/test': 301 Moved Permanently
>> (http://repositorydomain/test)
>>
>> Since apache can find the repository to browse, I think I have that set
>> up OK. Not sure what to look for next.
>>
>> Further disclosure:
>>
>> I have the same situation that Eric Bergemann reported this morning in
>> the thread "DB Restore", in which the "backup" was a copy of the
>> repository file system. Backups made daily, but not a "dump". I know
>> better now :(. In any case, my first attempt at restoration was simply
>> copying them back on to the server, but any attempt to access them
>> resulted in a hung process. I couldn't browse the repositories or
>> recover them. So now I am simplifying and just wanting to get
>> *something* working so that I know (at least) that I have a valid
>> subversion system in place.
>>
>> Thanks.
>>
>> Rob
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
>> For additional commands, e-mail: users-help@subversion.tigris.org
>>
>>
>
> Post the applicable apache configuration as that might shed some light
> on the issue. It seems like I had a similar issue once and it came
> down to some apache directives.
>
> Troy

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Sat Sep 9 08:45:34 2006

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

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