CentOS 5.5
Subversion 1.4
httpd-2.2.3-43.el5.centos.3
我有以下存储库结构 我为项目类别下的每个项目创建了多个目录。 例如,我们有WEB和DEV的项目
所以所有的WEB项目都有自己的存储库,而DEV也是如此。
我的结构是:
/var/www/svn/repos/WEB/web_project1
/var/www/svn/repos/WEB/web_project2
/var/www/svn/repos/DEV/dev_project1
/var/www/svn/repos/DEV/dev_project2
* _ project *将拥有自己的存储库。即。
svnadmin create / var / www / svn / repos / WEB web_project1
我为这些类别创建了以下subversion.conf。
<Location /WEB>
DAV svn
SVNListParentPath on
SVNParentPath /var/www/wsvn/repos/WEB
# Type of authentication
AuthType Basic
AuthUserFile /etc/svn-auth-file
# Access control list for control user groups read and write access
AuthzSVNAccessFile /etc/svn-acl-file
# Only valid authenticated user's can access
Require valid-user
</Location>
<Location /DEV>
DAV svn
SVNListParentPath on
SVNParentPath /var/www/wsvn/repos/DEV
# Type of authentication
AuthType Basic
AuthUserFile /etc/svn-auth-file
# Access control list for control user groups read and write access
AuthzSVNAccessFile /etc/svn-acl-file
# Only valid authenticated user's can access
Require valid-user
</Location>
问题在于我的访问控制列表。
# Everyone has read access to the repository
[/]
* = r
[group]
WEB-developers = tom
DEV-developers = dick, harry
everyone = tom, dick, harry
[WEB:/]
@WEB-developers
[DEV:/]
@DEV-developers
当我尝试浏览网址http://x.x.x.x/DEV/
I get a 403 request denied.
但是,如果浏览此网址http://x.x.x.x/DEV/dev_project1
我被允许访问。
但是,我想授予所有DEV开发人员访问所有项目的权限。因此,他们对DEV目录和下面的所有项目都有root权限。
所以基本上,我想让dick和harry可以访问DEV下的每个项目?
因此,他们可以访问此网址http://x.x.x.x/DEV/
并查看所有项目。
我的访问控制列表出错了?
非常感谢任何建议,
答案 0 :(得分:1)
不太确定,但据我所知,你有2种不同的服务器:
http://x.x.x.x/DEV/
http://x.x.x.x/WEB/
他们都使用apache + svn和相同的配置。
这样,WEB或DEV就不符合您配置中的任何规则,因为它们都只在http://x.x.x.x/YYY/
之后开始匹配,所以规则只适用于http://x.x.x.x/WEB/WEB
这样的文件夹。
由于它们都是两个不同的服务器,我建议你有两个不同的svnauth文件,每个文件都可以给你想要的读/写文件。