1.
准备工作,下载Apache2和subversion
httpd-2.2.4.tar.bz2 下载地址:
http://apache.mirror.phpchina.com/httpd/httpd-2.2.4.tar.bz2
subversion-1.4.4.tar.gz下载地址:
http://subversion.tigris.org/downloads/subversion-1.4.4.tar.gz
subversion-deps-1.4.4.tar.gz 依赖库下载地址:
http://subversion.tigris.org/downloads/subversion-deps-1.4.4.tar.gz
2.
安装Apache2(httpd-2.2.4.tar.bz2)
解压:gtar jxvf httpd-2.2.4.tar.bz2
编译参数
./configure --enable-module=so --enable-dav --enable-dav-fs --enable-so
--prefix=/svn/httpd
make
make install
3.
安装subversion
subversion-1.4.4.tar.gz 核心代码包
subversion-deps-1.4.4.tar.gz 依赖代码包
gtar zxvf subversion-1.4.4.tar.gz
gtar zxvf subversion-deps-1.4.4.tar.gz
分别解压两个压缩包,内容将解压到同一个目录 subversion-1.4.4,进入该文件夹,编译参数为
./configure --prefix=/svn/subversion
--with-apxs=/svn/httpd/bin/apxs
--with-apr=/svn/httpd
--with-apr-util=/svn/httpd
make
make install
4.
创建svn库:
svnadmin create /svn/repos
5.
更新/svn/httpd/conf/下的配置文件httpd.conf,加入以下内容:
<Location /svn>
DAV svn
SVNPath /svn/repos
AuthType Basic
AuthName "SVN Access"
AuthUserFile /svn/dav_svn.passwd
Require valid-user
AuthzSVNAccessFile /svn/repos/conf/authz
</Location>
6.
创建密码文件
htpasswd -c /svn/dav_svn.passwd user_name
-c表示新建文件,以后修改文件不需要这个参数
7.
根据以上配置,更新文件/svn/repos/conf/authz 用以配置权限,具体说明如下
[svn1:/] //这表示,仓库svn1的根目录下的访问权限
harry = rw // svn1仓库harry用户具有读和写权限
sally = r // svn1仓库sally用户具有读权限
[svn2:/] //svn2仓库根目录下的访问权限
harry = r // harry用户在svn2仓库根目录下只有读权限
sally = // sally用户在 svn2仓库根目录下无任何权限
#[/] // 这个表示在所有仓库的根目录下
#* = r // 这个表示对所有的用户都具有读权限
#[groups] // 这个表示群组设置
#svn1-developers = harry, sally // 这个表示某群组里的成员
#svn2-developers = sally
#[svn1:/]
#@svn1-developers = rw // 如果在前面加上@符号,则表示这是个群组权限设置
[/]
qiqi = rw
zgyuan = rw
[/Chibashi]
hanliang = r
liyujun = r
重新启动apache
8.
重新启动apache即可通过http://serveraddr/svn访问。
重启相关命令:./apachectl start,./apachectl restart ,./apachectl stop