声明:本教程在centos 32bit 下测试通过完成。如有转载请附出处,并且确保在转载的时候文章copy后的内容一致性,以防误导。
其实一般人搭建svn即可了,之所以加上apache是为了使用https链接来跳过公司的firewall。
首先安装 SVN:
centos下很简单:
yum install subversion安装完成使用
svn --version 即可检测是否安装成功。
那么接下来创建你的SVN目录,例如我创建在
/var/www/svn/tmsp 下面,请自行创建自己的目录
执行
svnadmin create /var/www/svn/tmsp来创建你的SVN仓库。会在tmsp目录下建立多个文件, 分别是conf, db,format,hooks, locks, README.txt。
创建完毕可以今次那个apache 整合。
yum install apr apr-util httpd httpd-devel subversion mod_dav_svn mod_auth_mysql在/etc/httpd/conf.d/目录下查看是否存在ssl.conf ,如果没有执行
yum -y install mod_ssl下面来配置SSL
cd /etc/pki/tls
rm private/localhost.key -f
openssl genrsa 1024 > private/localhost.key
cd certs
make testcert根据提示来完成配置。
在ssl.conf 配置下开启443端口
#ServerName www.example.com:443
修改为:
ServerName svn.72xit.com:443去掉前面的# 注释。
然后配置/etc/httpd/conf.d/subversion.conf
根据我上面的配置
DAV svn
SVNParentPath /var/www/svn
#
# # Limit write permission to list of valid users.
#
# # Require SSL connection for password protection.
SSLRequireSSL
#
AuthType Basic
AuthName "Please Enter password"
AuthUserFile /var/www/svn/tmsp/conf/passwd
AuthzSVNAccessFile /var/www/svn/tmsp/conf/authz
Require valid-user
#
这样就可以通过apache来验证了,剩下的就是给你的SVN添加用户权限。
在tmsp目录下conf 下authz passwd 用来添加权限和用户
eg:
htpasswd passwd xxx
根据提示完成密码。
在authz下添加
[tmsp:/]
用户名=rw
这样很好理解了吧。
重启一下 apache service httpd restart
OK,开始使用你的SVN服务吧。
PS:我一开始在win下commit的时候遇到svn: Can't open file '/var/www/svn/tmsp/db/txn-current-lock': Permission denied
这是因为目录的权限不够,你赋予目录读写权限即可。
本文详细介绍了在 CentOS 操作系统中安装 SVN 并配置 HTTPS 的步骤,包括安装依赖包、创建 SVN 目录、配置 SSL 和 Apache 整合,以实现通过 HTTPS 链接跳过公司防火墙。
950

被折叠的 条评论
为什么被折叠?



