安装软件
# yum install httpd mod_dav_svn subversion mod_ssl 
 #svn --version 如果出现版本号如
 
则说明svn安装成功
 查看httpd配置文件/etc/httpd/conf/httpd.conf
 如果找到
 
这说明apache模块安装正确
 配置
 1.创建版本库
 # mkdir -pv /svn/date   --创建主目录
 # svnadmin create /svn/date/www  --创建仓库
 2.更改权限
 # chmod -R 700 /svn/date/  --修改库的其他人无权限
 # chown -R apache:apache /svn/date/   --修改库的所属
 3.更改apache配置
 #vim /etc/httpd/conf/httpd.conf 
 加入以下内容
 <Location /svn> 
DAV svn
SVNParentPath /svn/date
AuthType Basic
AuthName "svn"
AuthUserFile /svn/passwd
AuthzSVNAccessFile /svn/auth.conf
Require valid-user
</Location>
                                 
 DAV svn
SVNParentPath /svn/date
AuthType Basic
AuthName "svn"
AuthUserFile /svn/passwd
AuthzSVNAccessFile /svn/auth.conf
Require valid-user
</Location>
#   DAV svn DAV   模块名称(我们这里也就是svn)
 #   SVNParentPath /svn/date   我们的库文件夹
 #  AuthType Basic   验证方式
AuthName "svn" 验证名称
AuthUserFile /svn/passwd 验证用户的文件
AuthzSVNAccessFile /svn/auth.conf 用户权限文件
Require valid-user 这项是说明/svn/passwd文件内说有用户都可以访问
 AuthName "svn" 验证名称
AuthUserFile /svn/passwd 验证用户的文件
AuthzSVNAccessFile /svn/auth.conf 用户权限文件
Require valid-user 这项是说明/svn/passwd文件内说有用户都可以访问
4.创建apache账户
 第一次 # htpasswd -c /svn/passwd neo -c 表示新建一个文件以后就不需要加了
 # htpasswd /svn/passwd tina
 # vim /svn/auth.conf 编辑权限文件 加入以下内容
 [groups] 
admin = neo,tina
[/]
neo=rw
tina=r
 admin = neo,tina
[/]
neo=rw
tina=r
# chown -R apache:apache /svn/ 再次修改文件所属
   这样我们apache+svn就搭建好了
 启用服务: 
 # service httpd start 
# svnserve -d -r /svn/date/
 # svnserve -d -r /svn/date/
测试
 
导入文件
 
输入账户密码
 
传输完成。
 这样子apache+svn就可以使用了,但是我们的http在网络上什么都是明文传递的 这样我们的数据是非常不安全的,所以我们将这个服务器与ssl整合到一起
 1.生产密钥文件
 #cd /etc/httpd/conf
 # openssl genrsa -out httpd.key 1024  生成一个私钥文件
 # openssl req -new -key httpd.key -out httpd.pem -days 3650 -x509
 利用这个私钥生成一个自签证书(因为svn使我们公司内部人员使用)
 
再红线处依次填写:国家,省份,城市,公司,部门,网络名,邮箱完成。
 修改apache使ssl生效
 # vim /etc/httpd/conf.d/ssl.conf
 
在红线处 修改证书和私钥地址 
 # vim /etc/httpd/conf/httpd.conf 加入红线那行(表示强制使用ssl连接)
 
重启apache.
  
浏览器访问 https://192.168.127.5/svn/www  
 
表示已经打开ssl连接了
   连接svn时就需要用https了
 加入开机启动
 # chkconfig httpd on
 # vim /etc/rc.local 
 
加入红线行
 到此apache+svn+ssl整合完成。