ubuntu SVN 创建项目 以及给项目增加用户访问权限

(一)的做法只是为了给 把这个版本仓库目录授权给apache读写(因为:svn不依赖apache. 配置apache,主要时为了在线浏览代码)
(一):roroot@AY130513164242798671Z:/etc/apache2/mods-enabled#cat dav_svn.conf
apache启动后,一切正常。访问:http://localhost/svn。登陆,权限验证正常,但是报出:403 Forbidden
You don't have permission to access /svn on this server.
用http://localhost/svn/repository访问 OK。
找了一下午的问题,为什么不能/svn的形式访问。把SVNParentPath的路径指向具体的repository(库),也无效。
继续搜索,原来,此处的SVNParentPath是支持多库类型,访问的时候只能
http://localhost/svn/repository的方式访问。
如果希望指向单一库,则需要配置根目录。如果本身就只有一个库的情况下,就大可不用SVNParentPath。
直接用SVNPath即可。
这时在地址栏中输入http://localhost/svn。ok。
(二):对svn 版本仓库目录 的理解
通过命令 svnadmin create /home/svn/repos
svnadmin create /home/svn/repository
本来/home/svn/repository 这个目录下什么都没有,执行下面的命令之后再去看一下,多出一些文件和文件夹,我们需要操作的是conf这个文件夹,这个文件夹下有一个文件,叫做passwd,用来存放用户名和密码。 (这里使用的是多个版本仓库目录repos和repository)为了方便管理不单独在repos和repository各自的目录下的conf 配置用户 而是使用了 跟repos和repository同级中的authz.conf 和passwd.conf统一管理repos和repository的访问权限




然后把这个版本仓库目录授权给apache读写:
sudo chown -R www-data:www-data /目录地址
然后来到打开apache配置文件:
sudo gedit /etc/apache2/mods-available/dav_svn.conf
加入如下内容:
注意:a.这里使用了SVNParentPath 它可以管理多个版本仓库目录
<Location /svn>
DAV svn
SVNParentPath /home/svn
AuthType Basic
AuthName "uniteque subversion repository"
AuthUserFile /home/svn/passwd.conf
AuthzSVNAccessFile /home/svn/authz.conf
Require valid-user
</Location>


b.如果希望指向单一库,则需要配置根目录。如果本身就只有一个库的情况下,就大可不用SVNParentPath。
<Location /project>
DAV svn
SVNPath /home/svn/project
AuthType Basic
AuthName “myproject subversion repository”
AuthUserFile /home/svn/project/conf/passwd
Require valid-user
</Location>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值