配置Linux+apache+svn环境

发布时间:2020-09-25编辑:脚本学堂
配置Linux+apache+svn环境

编译安装httpd (root用户操作):
//解压apache2安装包
# tar xvzf httpd-2.2.2.tar.gz
//进入解压后的目录
# cd httpd-2.2.2
//配置apache安装,前两个参数是必须要加的,你还可以根据您的需要添加其他的参数。
//后面的参数制定你要把apache安装哪里
# ./configure --enable-dav --enable-so --prefix=/usr/local/apache2/
# make
//安装
# make install
# cd /usr/local/apache2/bin
//启动apache服务
# ./apachectl start
//打开浏览器[url]http://localhost/[/url]如果有测试页"It works!"出现则证明已经安装成功。

安装Subversion
//解压SubVersion安装包 (root用户进行下面的操作)
# tar xvzf Subversion-1.3.1.tar.gz
//进入解压后的目录
# cd Subversion-1.3.1
//配置subversion安装
#./configure --with-apxs=/usr/local/apache2/bin/apxs
      --prefix=/usr/local/subversion --with-apr=/usr/local/apache2
      --with-apr-util=/usr/local/apache2 --with-ssl --with-zlib
      --enable-maintainer-mode
    # make
//安装
# make install
创建库文件所在的目录 (svnroot用户进行下面的操作)
# mkdir /home/svnroot/repository
//进入subversion的bin目录
# cd /usr/local/subversion/bin
//创建仓库"test"
# ./svnadmin create /home/svnroot/repository/test
# cd /home/svnroot/repository/test
//看看是不是多了些文件,如果是则说明Subversion安装成功了
# ls –l
#chown –R svnroot:svnroot /home/svnroot/repository/test
//改变库文件所有者
//不让其他人有该目录的权限
# chmod 700 /home/svnroot/repository

修改apache配置文件
# cd /usr/local/apadche2/bin
//启动Apache
# ./apachect1 start
# vi /usr/local/apache2/conf/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
      User svnroot
Group svnroot
 如果是单库不需要认证即可访问用如下配置
       <Location /svn>
       DAV svn
       SVNPath /home/svnroot/repository/
</Location>
如果是单库需要认证的用如下配置
<Location /svn>
 DAV svn
 SVNPath /home/svnroot/repository/
 AuthzSVNAccessFile /usr/local/apache2/conf/authz.conf
 AuthType Basic
 AuthName "Subversion.zoneyump"
 AuthUserFile /usr/local/apache2/conf/authfile
 require valid-user
</Location>
     如果是多库需要认证的用如下配置
     <Location /svn>
     DAV svn
     SVNParentPath /home/svnroot  //此处目录一定要是库目录的父目录
     AuthzSVNAccessFile /usr/local/apache2/conf/authz.conf
     AuthType Basic
     AuthName "Subversion.zoneyump"
     AuthUserFile /usr/local/apache2/conf/authfile
     Require valid-user
</Location>

Authz.conf配置文件格式:
[repository:/]
[groups]
组名 = 用户1,用户2
@组名 = rw