安装软件
# 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整合完成。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY