Linux(RH9)下安装apache和subversion 方法

80酷酷网    80kuku.com

  

  在网上看了一大堆资料,昨天终于在阿唐哥的帮助下配成了Linux(RH9)下的subversion。总结各路经验将安装配置过程写在下面:

  一、所需安装包:

  (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 -xzvf httpd-2.0.59.tar.gz

  # cd httpd-2.0.59

  编译参数 (默认安装目录/usr/local)

  # ./configure --enable-module=so --enable-dav --enable-dav-fs --enable-so --prefix=/usr/local/apache2

  #make

  #make install

  2、安装subversion - 1.4.4

  分别解压两个压缩包,内容将解压到同一个目录 subversion-1.4.4,(默认解压在同一个目录下)

  #tar -xzvf subversion-1.4.4.tar.gz

  #tar -xzvf subversion-deps-1.4.4.tar.gz

  进入该文件夹,编译参数为

  #cd subversion - 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

  #make install

  3、配置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>
DAV svn
SVNPath /svnroot/repository
SVNParentPath /home/svnroot/ //svn父目录
AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件
AuthType Basic //连接类型设置
AuthName "Subversion.zoneyump" //连接框提示
AuthUserFile /home/svnroot/repository/authfile //用户配置文件
</LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user //采用何种认证
</LimitExcept>
</Location>

  //其中authfile是通过

  htpasswd -b -c /home/svnroot/repository/authfile username password //来创建的

  //"Require valid-user"告诉apache在authfile中所有的用户都可以访问。如果没有它,

  //则只能第一个用户可以访问新建库

  重启apache

  #cd /usr/local/apache2/bin/ #./apachectl restart

  //打开浏览器访问http://localhost/svn/test/,如果有东西显示就说明成功。

  4.权限管理

  1)增加用户

  # htpasswd /home/svnroot/repository/authfile name

  //第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加

  # htpasswd authfile 用户名(加入新的用户)

  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



分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: