安装环境:
Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
2.6.9-42.EL
1.    下载 apr-1.2.9.tar.gz    安装:   <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

   tar -zxvf apr-1.2.9.tar.gz  

   cd apr-1.2.9  

   ./configure --prefix=/usr/local/apr-1.2.9  

   make  

   make install  

2.    下载 apr-util-1.2.8.tar.gz  

   tar -zxvf apr-util-1.2.8.tar.gz  

   cd apr-util-1.2.8  

   ./configure --prefix=/usr/local/apr-util-1.2.8 --with-apr=/usr/local/apr-1.2.9  

   make  

   make install  

3.  安装apache2.2.3 

   tar -zxvf httpd-2.2.3.tar.gz 

   cd httpd-2.2.3  

   ./configure \  

--prefix=/home/apache2 \  

--enable-rewite=shared \  

--with-apr=/usr/local/apr-1.2.9/bin/apr-1-config \  

--with-apr=/usr/local/apr-util-1.2.8/bin/apu-1-config \  

--enable-dav=shared \  

--enable-ssl=shared \  

--enable-deflate=shared \  

--enable-so \  

--enable-maintainer-mode  

   make
   make install
4.   安装 subversion1.4.0  

   tar -zxvf subversion1.4.0.tar.gz  

   cd subversion1.4.0  

   ./configure \  

--prefix=/usr/local/subversion \  

--with-apxs=/home/apache2/bin/apxs \  

--with-apr=/usr/local/apr-1.2.9/bin/apr-1-config \  

--with-apr-util=/usr/local/apr-util-1.2.8/bin/apu-1-config \  

--with-ssl \  

--enable-maintainer  

   make
   make install  
注:当碰到You don't seem to have Berkeley DB version 4.0.14 or newer提示时不用理会继续make
5.  察看/home/apache2/conf/httpd.conf 中是否包括如下模块: 

LoadModule deflate_module modules/mod_deflate.so  

LoadModule ssl_module modules/mod_ssl.so  

LoadModule dav_module modules/mod_dav.so  

LoadModule rewrite_module modules/mod_rewrite.so (我装的时候没有这行,不用管)  

LoadModule dav_svn_module    modules/mod_dav_svn.so  

LoadModule authz_svn_module  modules/mod_authz_svn.so  

6. 配置apache2.2.3 

编辑 /home/apache2/conf/httpd.conf  

去掉 Include conf/extra/httpd-ssl.conf  前面的注释#号  

修改启动用户和组为 apache
User apache
Group apache
编辑 /home/apache2/conf/extra/httpd-ssl.conf  ,在最后 </VirtualHost>  上面添加  

<Location /svn>  

  DAV svn  

  SVNParentPath /home/svn/repos  

  AuthType Basic  

  AuthName "SVN repository"  

  AuthzSVNAccessFile /etc/svn.access/authz  

  AuthUserFile /etc/svn.access/users  

  Require valid-user  

  SVNAutoversioning on  

</Location>  

7. 创建svn 目录: 

a)   svn  的目录 mkdir -p /home/svn/repos  

b) chown -R apache.apache /home/svn/  

c)   cd /home/apache2/htdocs/  

d)   ln -s /home/svn  

8. 创建apache 用户权限目录 

a)   mkdir -p /etc/svn.access  

b)   cd /etc/svn.access  

c)    编写 authz  如下内容  

[groups]  

admin = admin, gaolimin  

programmer = gaolimin  

tester = test  
[/]  

@admin = rw   #@admin表示上面的admin组

* = r  #表示所有用户可读
[test:/]  #项目名称,这里使用test,可根据自行情况定义

* = rw #表示所有用户可读写  

9. 创建允许访问的用户 

a)   /home/apache2/bin/htpasswd -cm /etc/svn.access/users admin(  第一次 )  

b)   /home/apache2/bin/htpasswd -m /etc/svn.access/users test(  以后 )  

c)   chown -R apache.apache /etc/svn.access  

10.  创建ssl 证书 

a)   openssl req -new > server.csr   #有若干提示输入密码
b)   openssl rsa -in privkey.pem -out server.key  

c)   openssl req -new -x509 -days 3650 -key server.key -out server.crt(  创建证书 )  

d)    chmod 400 server.key server.crt  

e)     cp server.* /home/apache2/conf/  

11. 创建项目版本 

a)   /usr/local/subversion/bin/svn create /home/svn/repos/admin  

b)   /usr/local/subversion/bin/svn create /home/svn/repos/test  
c) chown -R apache.apache /home/svn/repos/admin
d) chown -R apache.apache /home/svn/repos/test #每创建一个项目就要设置一下权限,否则客户端提交失败 

12.  启动apache+ssl 

a)    /home/apache2/bin/apache start
13.  测试svn 

a)   https://ip/svn/test 即可访问
b)   测试成功了么?
注意:如果只需要https访问,只需要启动apache就可以了,svn不需要再启动。
 
/**************************************************************/
附录(自动启动apache):
在Linux系统中我一般采用编译源码的方式来安装Apache,有两种方法可以让Apache在系统启动时自动启动,本人用的方法2。

方法1:在/etc/rc.d/rc.local中增加启动apache的命令,例如:/home/apache2/bin/apachectl -k restart

方法2:将apache注册为系统服务
首先将home/apache2/bin/目录下的apachectl命令拷贝至/etc/rc.d/init.d目录下,改名为httpd,使用编辑器打开httpd文件,并在第一行#!/bin/sh下增加两行文字如下
# chkconfig: 35 70 30
# description: Apache
接着注册该服务
chkconfig --add httpd
chkconfig httpd on
chkconfig --list httpd #查看是否已打开
一切OK了,启动服务
service httpd start
其中所增加的第二行中三个数字第一个表示在运行级别3和5下启动apache,第二、三是关于启动和停止的优先级配置,无关紧要。
 
附subversion×××地址
 
apr、apr-util、apache: