二、实现http方式访问、apache本地文件认证
由于SVN服务器的密码是明文的,HTTP服务器不与支持,所以需要转换成HTTP支持的格式。
1、安装apache svn 集成依赖包,会产生两个so文件,
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so[root@Aries ~]# yum install mod_dav_svn -y 2、将svn的用户配置转换为http认证文件
以下为一个小脚本;方便转换
[root@Aries conf]# pwd
/opt/svn/svn/conf
[root@Aries conf]# cat stoh.pl
use warnings;
use strict;
open (FILE, "passwd") or die ("Cannot open the passwd file!!!n");
open (OUT_FILE, ">webpasswd") or die ("Cannot open the webpasswd file!!!n");
close (OUT_FILE);
foreach () {
if($_ =~ m/^[^#].*=/) {
$_ =~ s/=//;
`htpasswd -b webpasswd $_`;
}
} 进行转换;
[root@Aries conf]# perl stoh.pl
Adding password for user admin
Adding password for user dev
Adding password for user qa
Adding password for user ops
Adding password for user zq 3、修改httpd.conf,添加关于SVN服务器的内容
[root@Aries conf]# vim /etc/httpd/conf/httpd.conf
#add for svn
DAV svn
SVNPath /opt/svn/svn/
AuthType Basic
AuthName "Authentication for svn"
AuthUserFile /opt/svn/svn/conf/webpasswd
AuthzSVNAccessFile /opt/svn/svn/conf/authz
Satisfy all
Require valid-user
重启服务