安装环境:
Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
2.6.9-42.EL
1.  下载apr-1.2.9.tar.gz  安装: 
   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: