403使用AuthzSVNAccessFile时禁止

我有一个运行良好的svn服务器运行在使用Apache进行访问的窗口上。 在原始设置中,每个用户都可以访问所有存储库,但是最近我需要授予用户只能访问一个存储库的权限。 我取消了在我的httpd.conf文件中的AuthzSVNAccessFile行的注释,并指出它到一个accessfile并设置访问文件,但是当我去到mydomain.com/svn时,我得到了一个403 Forbidden。 如果我build议这条线,那么事情再次工作。 我也确定我取消了LoadModule authz_svn_module的注释并validation它指向了正确的文件。

下面是我的httpd.conf和我的svnaccessfile的位置部分

httpd.conf (location section only) <Location /svn> DAV svn SVNParentPath C:\svn SVNListParentPath on AuthType Basic AuthName "Subversion repositories" AuthUserFile passwd Require valid-user AuthzSVNAccessFile svnaccessfile </Location> 

(从长远来看,我想要一个更复杂的策略,但是这只是testing这个文件)svnaccessfile

 [svn:/] * = rw 

我也尝试了下面的svnaccess文件。

 [/] * = rw 

每次更改之后,我也会重新启动服务,以确保它已被占用。

它看起来像我已经通过更改位置标记的开始解决了问题

不同之处在于拖尾/

从上面的答案中筛选出来的是<Location / svn />

您还需要:

[/]

部分在您的acl文件中具有适当的权限

这只适用于如果你想允许每个人访问。

我的ACL文件很简单:

 [/] scott = rw 

这会产生一个403错误,但是如果我更改了ACL文件,那么它就是:

 [/] * = rw 

…允许访问。

仍然在搞清楚为什么*允许访问,但是一个特定的用户导致403错误(我有这个用户在一个htpasswd文件中定义的AuthUserFile引用)