1:安装http,mod_dav_svn,让http支持svn
yum install httpd apr apr-util httpd-devel mod_dav_svn mod_auth_mysql
2:检查模块是否存在
cd /etc/httpd/modules/ && ls mod_dav_svn.so mod_auth_mysql.so
mod_dav_svn.so mod_auth_mysql.so
3:创建SVN的http加密文件
htpasswd -cm /data/svnroot/conf/svnpasswdfile admin
htpasswd -m /data/svnroot/conf/svnpasswdfile test1
htpasswd -m /data/svnroot/conf/svnpasswdfile test2
创建SVN的明文密码文件
vim passwd
[users]
test = svnpasswd
test1 = svnpasswd
test2 = svnpasswd
注意:
/data/svnroot/conf/目录下面passwd文件是svnserve独立服务器使用的认证文件,密码没有加密,明文显示。
/data/svnroot/conf/目录下面http_passwd文件是Apache的http模式使用的认证文件,密码使用MD5加密。
passwd和http_passwd文件中,账号密码必须设置相同。
4:配置http
你会发现路径/etc/httpd/conf.d/多了几个文件,因为我们在yum的时候已经安装完成了
auth_mysql.conf README subversion.conf welcome.conf
直接配置subversion.conf,内容如下
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /data/svnroot
AuthType Basic
AuthName "Authorization SVN"
AuthzSVNAccessFile /data/svnroot/conf/authz
AuthUserFile /data/svnroot/conf/svnpasswdfile
Require valid-user
</Location>
5:重启动http
/etc/init.d/httpd restart
6:svn服务器如果要具体配置权限文件和密码文件,需要在每个新建的库conf目录中修改svnserve.conf配置;如果库很多的话每个都要做修改很麻烦。
7:所有库共用一套密码文件和权限文件
svnserve -d -r /data/svnroot --config-file /data/svnroot/conf/svnserve.conf --listen-port 3690
未完待续。。。
本文转自卫庄的痛 51CTO博客,原文链接:http://blog.51cto.com/crfsz/1831072,如需转载请自行联系原作者