在这里和大家共同探讨一下Linux(RH9)下安装Subversion和apache问题, 总结各路经验将安装配置过程写在下面:
一、所需安装包:
(1)、Apache--httpd-2.0.59.tar.gz
(2)、subveision--subversion-1.4.4版
包含两个包
subversion-1.4.4.tar.gz核心代码包
subversion-deps-1.4.4.tar.gz依赖代码包
二、安装步骤:
1、安装Apache
首先解压httpd--2.0.59包
#tar-xzvfhttpd-2.0.59.tar.gz
#cdhttpd-2.0.59
编译参数(默认安装目录/usr/local)
#./configure--enable-module=so--enable-dav--enable-dav-fs--enable-so--prefix=/usr/local/apache2
#make
#makeinstall
2、安装subversion-1.4.4
分别解压两个压缩包,内容将解压到同一个目录subversion-1.4.4,(默认解压在同一个目录下)
#tar-xzvfsubversion-1.4.4.tar.gz
#tar-xzvfsubversion-deps-1.4.4.tar.gz
进入该文件夹,编译参数为
#cdsubversion-1.4.4
#./configure--prefix=/usr/local/subversion
--with-apxs=/usr/local/apache2/bin/apxs
--with-apr=/usr/local/apache2
--with-apr-util=/usr/local/apache2
#make
#makeinstall
3、配置SVN服务器
Linux(RH9)下安装Subversion和Apache过程中要配置SVN服务器,分以下几个步骤:
(1)修改版本库配置文件:
版本库1:vi/home/svnroot/repository/conf/svnserve.conf
内容修改为:
[general]
anon-access=none
auth-access=write
password-db=/home/svnroot/repository/authfile//用户配置文件
authz-db=/home/svnroot/repository/authz.conf//权限配置文件
##realm=test
(2)修改Apache配置文件,添加以下数据至httpd.conf
- <Location/svn>
- DAVsvn
- SVNPath/svnroot/repository
- SVNParentPath/home/svnroot///svn父目录
- AuthzSVNAccessFile/home/svnroot/repository/authz.conf//权限配置文件
- AuthTypeBasic//连接类型设置
- AuthName"Subversion.zoneyump"//连接框提示
- AuthUserFile/home/svnroot/repository/authfile//用户配置文件
- < span>LimitExceptGETPROPFINDOPTIONSREPORT>
- Requirevalid-user//采用何种认证
- < span>LimitExcept>
- < span>Location>
//其中authfile是通过
htpasswd-b-c/home/svnroot/repository/authfileusernamepassword//来创建的
//"Requirevalid-user"告诉apache在authfile中所有的用户都可以访问。如果没有它,
//则只能第一个用户可以访问新建库
重启apache
#cd/usr/local/apache2/bin/#./apachectlrestart
//打开浏览器访问http://localhost/svn/test/,如果有东西显示就说明成功。#p#
4.权限管理
Linux(RH9)下安装Subversion和Apache过程中也要进行权限的设置,包括以下内容:
1)增加用户
#htpasswd/home/svnroot/repository/authfilename
//第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加
#htpasswdauthfile用户名(加入新的用户)
2)权限分配
配置用户访问权限:vi/home/svnroot/repository/authz.conf
为了简化配置,3个版本库共用1个权限配置文件/home/svnroot/repository/pwd.conf。如有必要,也可以分开。文件中定义用户组和版本库目录权限。
注意:
*权限配置文件中出现的用户名必须已在用户配置文件中定义。
*对权限配置文件的修改立即生效,不必重启svn。
用户组格式:
[groups]
<用户组名>=<用户1>,<用户2>
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。
版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名>=<权限>
<用户名>=<权限>
其中,方框号内部分可以有多种写法:/,表示根目录及以下。根目录是svnserve启动时指定的,我们指定为/home/svnroot/repository。这样,/就是表示对全部版本库设置权限。
test:/,表示对版本库test设置权限,权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。
示例:
- [groups]
- admin=mangosoft
- [/]
- @admin=rw
- [test:/]
- @admin=rw
- lsw=rw
本文介绍Linux(RH9)下安装Subversion和Apache问题完毕。
【编辑推荐】