Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a Debian Squeeze server with Apache2 and Subversion on-board. The Subversion version is 1.6.12 (r955767). It is from debian repos. But recently I installed Subversion v1.7.7 from sources into /usr/local/ and now in console I see

root@test:~# svn --version
svn, version 1.7.7 (r1393599)
   compiled Dec  6 2012, 17:28:19

   ...

root@test:~# svnadmin --version
svnadmin, version 1.7.7 (r1393599)
   compiled Dec  6 2012, 17:28:19

   ...

root@test:~# svnserve --version
svnserve, version 1.7.7 (r1393599)
   compiled Dec  6 2012, 17:28:19

   ...

But when I access this server through Apache I'm getting the following server signature

Powered by Subversion version 1.6.12 (r955767).

Apache virtual host config is

<VirtualHost XXX.XXX.XXX.XXX:80>
        ServerAdmin aboritskiy@XXXXXXXXX.XX
        ServerName svn.XXXXXXXXX.XX
        HostnameLookups Off
        UseCanonicalName Off
        ServerSignature On

        <IfModule mod_userdir.c>
                UserDir public_html
                Include /etc/apache2/mod_userdir.conf
        </IfModule>
        <Directory "/var/svn/">
                Options FollowSymLinks
                AllowOverride All
                Order allow,deny
                Allow from all
        </Directory>
        <Location />
                DAV svn
                SVNParentPath /var/svn/repos

                AuthType Basic
                AuthName "Advance Digital Subversion Repository."
                AuthUserFile /etc/apache2/dav_svn.passwd
                Require valid-user
        </Location>
</VirtualHost>

So the question is: How does Apache choose the version of Subversion to work with? How to change this setting?

share|improve this question

2 Answers 2

You also need to upgrade the Apache webDav / SVN module (libapache2-svn) so you'll either need to grab the Apache source as well and compile an updated version of Apache and the lib, else apt-get yourself the latest Apache, SVN and libapache2-svn packages.

share|improve this answer

If you look in /etc/apache2/mods-enabled/dav_svn.load, you'll see

LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so
LoadModule authz_svn_module /usr/lib/apache2/modules/mod_authz_svn.so

You can confirm that those point to Debian's Subversion 1.6.12 module:

$ strings /usr/lib/apache2/modules/mod_dav_svn.so | grep 'Powered by'
 <hr noshade><em>Powered by <a href="http://subversion.tigris.org/">Subversion</a> version 1.6.12 (r955767).</em>

You should modify /etc/apache2/mods-available/dav_svn.load to point to your self-built Subversion modules for Apache.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.