首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > CVS SVN >

svn编译装配以及配置仓库经http访问

2012-07-03 
svn编译安装以及配置仓库经http访问1,下载编译安装aprwget http://labs.mop.com/apache-mirror//apr/apr-1

svn编译安装以及配置仓库经http访问

1,下载编译安装apr
wget http://labs.mop.com/apache-mirror//apr/apr-1.4.6.tar.gz
2,下载编译安装apr-util with apr
wget http://mirror.bjtu.edu.cn/apache//apr/apr-util-1.4.1.tar.gz
3,下载sqllite
wget http://www.sqlite.org/sqlite-amalgamation-3071000.zip
4,复制sqlite3.c到svn源码路径新建的sqlite-amalgamation下
cp sqlite3.c subversion-1.7.3/sqlite-amalgamation/sqlite3.c
5,安装zlib
yum install zlib-devel.i686
6,编译安装svn with apr apr-util
./configure --prefix=/usr/local/subversion-1.7.3 --with-apr=/usr/local/apr-1.4.6/ --with-apr-util=/usr/local/apr-util-1.4.1/

7,创建仓库
svnadmin create /usr/local/subversion-1.7.3/repos

8,服务启动命令加入 /etc/rc.local
/usr/local/subversion-1.7.3/bin/svnserve -d -r /usr/local/subversion-1.7.3
启动时候指定仓库目录前缀,-r /usr/local/subversion-1.7.3 , 远程就可以不用指定这个前缀了,隐藏多余目录,安全
svn://host/repos

9,编辑repos下的 svnserve.conf文件
anon-access = read 匿名读
auth-access = write 认证读写

password-db = passwd密码文件
authz-db = authz授权文件

10,编辑passwd,增加用户名和密码
wangchengjie=wangchengjie
11,编辑authz,设定访问权限
[仓库名:目录]
[repos:/]
wangchengjie=rw
*=r

?

让svn支持http访问,需要和配置apache

1,apache版本支持DSO,以及web_dav,如果不支持则需要换版本或者自己编译

编译apache的时候指定configure参数--enable-so --enable-dav

2,编译svn的时候指定configure参数--with-apxs=/usr/local/apache2/bin/apxs,指向apache的bin目录里的一个apxs脚本文件,svn编译会将mod_dav_svn和mod_authz_svn模块生成到apache的modules目录中

3,设置apache,编辑httpd.conf

LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

4,创建账号密码管理文件

htpasswd -cm 文件全路径/password wcj

利用apache的密码生成工具,输入命令后会提示输入密码,并加入指定文件中

?

htpasswd -m 文件全路径/password wcj2

添加用户

5,对svn仓库各目录配置用户授权

在svn仓库的默认授权文件上进行修改即可,拷贝到合适的目录

?

6,增加apache httpd.conf参数,重启apache,另外将svn仓库的目录的other权限进行设置,让其他用户可读写

<Location /repos>
DAV svn
SVNParentPath 仓库父目录全路径

# our access control policy
AuthzSVNAccessFile 访问授权配置文件全路径


# only authenticated users may access the repository
Require valid-user

# how to authenticate a user
AuthType Basic
AuthName "Subversion repository"
AuthUserFile 用户验证文件全路径

</Location>

热点排行