SVN的服务器端的基本配置(apache的方式)

1 0 497

SVN的服务器端的配置(apache的方式)

(1)apache的安装。(版本问题)
(2)SVN服务端的安装
(3)基本配置-单仓库和多仓库
(4)基本认证方式
(5)基于目录的权限控制的方式
(6)客户端远程修改密码的方式

 

(1)apache的安装。(版本问题)
apache_2.0.59-win32-x86-no_ssl.msi
安装过程中,需要填写一些信息,,通过http://localhost进行测试apache安装是否成功。

(2)SVN服务端的安装
我的版本:SVN 1.4.4
一路安装,按照默认方式。
Subversion会认识到你已经安装了Apache

(3)基本配置-单仓库和多仓库
确保你没有注释,使之可用:假如D:/ProgramFiles/Subversion 为SVN安装路径
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module”D:/ProgramFiles/Subversion/bin/mod_dav_svn.so”
LoadModule authz_svn_module “D:/Program Files/Subversion/bin/mod_authz_svn.so”

在Apache http.conf 中加入下列语句:仓库目录为rep,位于E:\SVN下,

<Location /svn>
DAV svn
SVNPath E:\SVN\rep
</Location>

可以通过http://localhost/svn/测试单仓库

 

假如多库模式:库如下,在 E:/svn 下有doc库,code库,

<Location /svn>
DAV svn
SVNParentPathE:\SVN
</Location>

注意SVNParentPath E:\SVN 与SVNPath E:\SVN 的区别
通过http://localhost/svn/doc     http://localhost/svn/code   进行测试

 

(4)基本认证方式
<Location /svn>
DAV svn
SVNParentPath E:\SVN
AuthType Basic
AuthName “Subversion repositories”
AuthUserFile e:/passwd
Require valid-user
</Location>
e:/passwd如何生成?通过Apache下的htpasswd命令:
进入D:\Program Files\Apache2\bin
htpasswd    –c –m e:/passwd    liyingbo
-c  创建E盘passwd文件,注意:创建文件后,继续添加用户不在使用-c参数,切记
-m  可省略
e:/passwd:文件路径
liyingbo:创建的用户
重启apache后,至此进入http://localhost/svn/rep1需要密码认证

 

(5)基于目录的权限控制的方式
<Location     /svn>
</Location>
中加入    AuthzSVNAccessFile    e:/svnaccessfile

e:/svnaccessfile的内容如下:(权限认证是一项复杂的工作,下层权限继承上层的权限,)groups为分组,对组进行权限设置
[groups]
admin = liyingbo
test= jackyli

[doc:/]
@admin = rw
* =

[code:/project1]
@admin =
@test =r

[code:/]
@test= rw
@admin =
注意:当文件中包含有汉字的时候,需要通过高级编辑器(如UE)将文件转化为UTF-8,权限文件才生效

 

(6) 客户端远程修改密码的方式
e:/passwd中的用户密码是加密的,客户端可以远程修改密码.
有两种方法
(1) http://bbs.iusesvn.com/thread-20-1-1.html
仅仅使用与windows平台,配置简单
(2)http://www.iusesvn.com/html/37/t-1837.html
应用于windows与linux平台,需要PHP的支持,配置稍微复杂。

本人开始学习php就是从这里开始的,所以很有意义。
原创:李迎波,共享与www.iusesvn.com论坛, 用户名:99lingbo
原因:公司使用linux fc6做为服务器,需要此功能

留言

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>