CentOS搭建SVN服务器,并通过Apache HTTP方式访问
摘要:本文主要讲述了在centos 6.5环境下搭建svn服务器,可通过svn:\\IP方式访问。同时由于部分公司内网端口限制,并不能访问外网的svn服务器,所以特地结合了apache服务器,使得可以通过http方式http://IP方式访问svn服务器。
环境准备:
centos版本:centos 6.5 64位
CentOS配置SVN服务器:
1、检查是否安装了低版本的SVN
rpm -qa subversion
2、卸载旧版本SVN
yum remove subversion
3、安装SVN
yum -y install subversion
4、建立SVN版本库
mkdir -p /home/用“用户名”替代/svn
svnadmin create /home/用“用户名”替代/svn
此处版本库名为svn,也可以是其它
5、配置代码库
进入“/home/用“用户名”替代/svn”文件夹下的conf下,进行配置
5.1、用户密码配置
编辑passwd,在[users]下添加用户名和密码
[users]
# harry = harryssecret
# sally = sallyssecret
root=password
5.2、编辑控制权限authz
目的是设置哪些用户可以访问哪些目录,向authz文件追加以下内容,包括一个组project_p,组下有一个用户root。使root用户对svn上所有项目拥有读写权限:
[groups]
project_p = root
[/]
root=rw
若只希望某个用户对 某个项目有读、写、读写权限,可如下设置:
[/Project]
root=r
5.3、服务svnserve.conf配置
在[general]下追加如下内容
#匿名访问的权限,可以是read,write,none,默认为read
anon-access=none
#使授权用户有写权限
auth-access=write
#密码数据库的路径
password-db=passwd
#访问控制文件
authz-db=authz
#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=/home/用“用户名”替代/svn
6、启动SVN
svnserve -d -r /home/用“用户名”替代/svn
7、查看SVN进程
ps -ef|grep svn|grep -v grep
8、检测SVN端口
netstat -ln |grep
9、停止重启SVN
killall svnserve //停止
svnserve -d -r /home/用“用户名”替代/svn // 启动
10、测试
Windows客户端TortoiseSVN连接。地址为:svn://IP地址,输入配置好的用户名和密码。即可进行测试。
11、检出svn到指定目录
进入需要检出的目标目录,执行
svn checkout svn://IP/Project
配置Apache支持HTTP方式访问
1、如果没有安装apache服务,那么安装apache服务及对svn的支持
#apache服务器,让我们的svn 服务器支持http协议访问,而不仅是svn://协议
yum install httpd
#apache操作svn模块
yum install mod_dav_sv
2、修改配置文件/etc/httpd/conf.d/subversion.conf(没有则新建),內容为:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so <Location /svn>
DAV svn
SVNListParentPath on
SVNPath /home/"用户名"/svn
AuthType Basic
Satisfy Any
AuthName "Subversion repos"
AuthUserFile /home/"用户名"/svn/conf/accesspwd
AuthzSVNAccessFile /home/"用户名"/svn/conf/authz
Require valid-user
</Location>
3、创建accesspwd 文件
htpasswd -c -m /home/"用户名"/svn/conf/accesspwd root
4、让apache用户对”/home/“用户名“/svn″目录拥有写权限。
#将用户apache加入root组
usermod -a -G root apache
#让group对/home/"用户名"/svn目录也有写权限
chmod -R g+w /home/"用户名"/svn
#查看apache用户属于的组
groups apache
5、开启httpd服务
service httpd restart
现在就可以通过”http://ip/svn″来访问我们的svn 服务器了
最新文章
- 使用UG UISTYLER 窗体编辑器,创建对话框 part 2
- 详细介绍如何在win7下首次实现通过Git bash向Github提交项目
- Oracle 连接 Visual Studio 的工具
- html --- VML --- javascript --- 旋转矩形
- Java Properties类
- 归档 NSKeyedArchiver
- 【DP/单调栈】关于单调栈的一些题目(codevs 1159,codevs 2673)
- 主流智能手机屏幕材质介绍 及 LCD闪屏现象分析
- codevs 2241 排序二叉树
- CodeForces 379 D. New Year Letter
- 人们的Live Meeting系列 (floyd)
- tp5 url 线上访问 在nginx 上 出现404错误,解决办法(1.80nginx 配置 pathInfo)
- (二)文档请求不同源之location.hash跨域
- HTTP之referrer
- HTML02单词
- 7、Kafka、AMQ、RabbitMQ对比
- Redis Cluster集群知识学习总结
- Daily Scrumming* 2015.12.18(Day 10)
- 3D-爱心
- Linux系统下ping命令报错 name or service not know