增加配置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
就可以直接访问到里面的内容了