SVN with Apache 2.2 error: "Forbidden You don't have permission to access /repos on this server"

25,075

It seems you are confusing the SVNPath and SVNParentPath directives.

From what you post, it seems that /var/www/svn/repos contains a single repository. In this case, use

SVNPath /var/www/svn/repos

Only if you have multiple repositories, you should use SVNParentPath. Each individual repository should then be located in a subfolder of the directory you configure here.

So either set it to the parent directory:

SVNParentPath /var/www/svn

Or leave the configuration as is and move your current repository to a subdirectory, e.g. /var/www/svn/repos/myRepo

For more information on the use of mod_dav_svn, check the SVN Book section on mod_dav_svn

Share:
25,075

Related videos on Youtube

gozu
Author by

gozu

Currently learning Cisco networking, Perl, Ruby, Objective-C and love-making. Just kidding, I'm an expert at love-making.

Updated on September 18, 2022

Comments

  • gozu
    gozu over 1 year

    I have been following this svn installation guide and when I try to access my test repo by going to http://localhost/repos , I authenticate successfully but then I get this:

    "Forbidden You don't have permission to access /repos on this server"
    

    Here is my subversion.conf file:

    LoadModule dav_svn_module     modules/mod_dav_svn.so
    LoadModule authz_svn_module   modules/mod_authz_svn.so
    
    
    <Location /repos>
       DAV svn
       SVNParentPath /var/www/svn/repos
    #
    #   # Limit write permission to list of valid users.
    #   <LimitExcept GET PROPFIND OPTIONS REPORT>
    #      # Require SSL connection for password protection.
    #      # SSLRequireSSL
    #
          AuthType Basic
          AuthName "Subversion repos"
          AuthUserFile /etc/svn-auth-conf
          Require valid-user
    #   </LimitExcept>
    </Location>
    

    My path is /var/www/svn/repos and here are my permissions

    [root@localhost svn]# ls -la repos/
    total 32
    drwxr-xr-x. 6 apache apache 4096 Aug 24 11:42 .
    drwxr-xr-x. 3 root   root   4096 Aug 24 11:42 ..
    drwxr-xr-x. 2 apache apache 4096 Aug 24 13:50 conf
    drwxr-sr-x. 6 apache apache 4096 Aug 24 11:42 db
    -rwxr-xr-x. 1 apache apache    2 Aug 24 11:42 format
    drwxr-xr-x. 2 apache apache 4096 Aug 24 11:42 hooks
    drwxr-xr-x. 2 apache apache 4096 Aug 24 11:42 locks
    -rwxr-xr-x. 1 apache apache  229 Aug 24 11:42 README.txt
    

    If I go to localhost/repos/README.TXT I get this message.

    <D:error><C:error/><m:human-readable errcode="20">
    Could not open the requested SVN filesystem
    </m:human-readable></D:error>
    

    Any other filename gives errcode ="2" instead.

    selinux is set to permissive, I can see the localhost/index.html file located at var/www/html/index.html just fine.

    I have read through a couple fozen forum posts with similar issues to no avail.

    Any ideas would be appreciated!

    EDIT 1:

    I edited my subversion.conf file to change SVNParentPath /var/www/svn/repos to SVNParentPath /var/www/svn but it appears to have no effect.

    EDIT 2:

    brain99 nailed it. Changing to Location /> fixed the problem and now I am getting a repos - Revision 0: /

    Powered by Subversion version 1.6.11 (r934486).

  • gozu
    gozu over 11 years
    I edited my subversion file as you ordered and restarted httpd and svnserve, full of youthful hope but the error msg is the same afterwards :(
  • brain99
    brain99 over 11 years
    I'm actually not sure if you can have SVNParentPath /var/www/svn in a <Location /repos> block where both refer to a different directory. You might want to try changing that into <Location />. Can you post any errors you get in your apache error.log?
  • gozu
    gozu over 11 years
    You nailed it. Changing to Location /> fixed the problem and now I am getting a repos - Revision 0: / Powered by Subversion version 1.6.11 (r934486). Thank you so much!
  • Michael Hampton
    Michael Hampton almost 10 years
    It doesn't appear that you fully understood the question. Perhaps you meant to answer a different question?
  • gozu
    gozu almost 10 years
    This question was answered almost 2 years ago :)