Apache SVN配置

    总体来说,配置比较简单,先安装Apache http server,down了一下2.0.58的msi版本。安装后打开安装目录下的/modules目录,发现库很全,特别是webdav需要的 mod_dav.so在,好了,apache安装结束。同事的2.0.54版本里/modules下面so库没有几个,建议他重新安装2.0.58版。
    原理如下,利用apache服务访问svn服务器,在apache服务启动时,加载svn启动库,客户就可以通过webdav的方式访问了。svn启动时 需要必须加载的库是mod_dav_svn.so,如果需要对访问的repository进行用户和目录的权限设置,则需要 mod_authz_svn.so库。这两个库都在%subversion%/bin目录下,先把这两个文件拷入到%apache%/modules目录 下。

    物理文件准备完毕,修改%apache%/conf/下面的httpd.conf文件。可以看到
# LoadModule dav_module modules/mod_dav.so
    也就是说,apache默认启动不是以webdav方式,去掉#,再下面添加如下两行
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
    现在apache启动时会加载上面三个so。

    在文件末尾加上如下内容,下面是比较简单的配置:

<Location /repos>                     # "/repos"是在url上指定的访问路径,客户访问需要键入这个路径。
  DAV svn                             # 声明svn
  SVNPath E:/svn                      # "E:/svn"是服务器上svn的repository的目录。
#  SVNParentPath E:/svn               # 对于一个目录下存在多个工程的情况,可以声明这个变量。

# 在apache中配置svn有两种,可以混合使用,一种是apache自身的认证机制,
# 对进入/repos目录的用户进行统一认证,
# 一种是应用svn的认证,可以深入到目录级别进行权限控制,
# 和svn独立启动时设置权限一样。
### apache auth begin
  AuthType Basic                     
  AuthName "Subversion repository"    # 认证的名字
  AuthUserFile D:/svn_auth_file       # D:/svn_auth_file里面存放的是使用htpasswd -m D:/svn_auth_file user
                                      # 生成的用户名与密码的加密文件。注意,此处的路径不能有空格。
  Require valid-user                  # 声明,必须是有效的用户才可以访问
### apache auth end

### svn auth begin 
  AuthzSVNAccessFile D:/svn_authz     # D:/svn_authz文件是根据%respository%/conf/authz的规则编写,其实就
                                      # 是svn对用户权限读取的文件格式,mod_authz_svn.so要求的格式。
#  SVNIndexXSLT "d:/svnindex.xsl"     # d:/svnindex.xsl是用户可以自定义的显示模版,设计好模板,html上的显
                                      # 会更漂亮。
 # authentication if necessary.
  Satisfy Any                         # 字面翻译是:都要满足,是声明用户要满足条件   
  Require valid-user                  # 声明,必须是有效的用户才可以访问
### svn auth end 
</Location>

    这时,通过 http://serverip/repos 可以根据设定好的权限进行访问,访问时可以看到最新的版本号,如何让http访问的时候也可以像cvs那样看到更多的内容,老的版本,比较信息呢?可以使 用viewvc来做,原来viewvc支持cvs,现在,也已经开始支持subversion了。

    配置结束了,使用apache启动svn服务其实是加载了svn的库,我们看到,此种方式下,对svn的权限设置不同于svn独立模式的要求,用不上 svn自己的配置,但配置要求都是一样的格式,都是svn的核心认证库modmod_authz_svn.so在决定内容。只是不同的启动方式而已。

from: http://magnetocn.bokee.com/viewdiary.10973859.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值