增加配置Apache2 管理 SVN 访问权限 配置Apache2 管理 SVN

继续之前的 文章里的配置

一.修改配置/etc/httpd/conf.d/ subversion.conf

<Location /svn/>
DAV svn
SVNParentPath /home/svn_data
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /home/svn_data/passwd
AuthzSVNAccessFile /home/svn_data/authz
Require valid-user
</Location>

1.其中红色为修改的,

SVNParentPath:支持多个具备相同父目录的Subversion版本库,这样可以不用经常修改subversion.conf,只需要修改权限文件就可以了。

SVNPath:只支持一个父目录的Subversion版本库,这是之前使用的

2.绿色为增加的,增加的主要是指向权限配置文件。

二.从某个具体的svn某个项目的根目录下复制一个authz 文件到 /home/svn_data

1增加权限组:

在/home/svn_data/authz里面找到先

[groups]

然后在下面增加 g_server=haha1,haha2,如下

[groups]
g_server=haha1,haha2

其中haha1和haha2两个svn用户g_server组

2.在文件最后增加访问路径权限:

目前的目录结构如下:

/home/svn_data/ svn根目录

/home/svn_data/ test1 测试项目1

/home/svn_data/ test1/server 测试项目1的服务器目录

/home/svn_data/ test1/client 测试项目1的客户端目录

增加配置让服务器组可以访问 /home/svn_data/ test1/server:

[test1:/server]
@g_server=rw

三.service httpd restart

四.访问路径由于使用SVNParentPath ,需要增加/svn根目录:

http://127.0.0.1/svn/test1  

http://127.0.0.1/svn/test1/client

这两个地址应该是返回类似于以下错误 信息:

Forbidden

You don't have permission to access /test1 on this server.

http://127.0.0.1/svn/test1/server

就可以直接访问到里面的内容了