微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

1
rpm -qa subversion

2、卸载旧版本SVN

yumremovesubversion

3、安装SVN

yum-yinstallsubversion

4、建立SVN版本库

mkdir-p/home/用“用户名”替代/svn
svnadmincreate/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|grepsvn|grep-vgrep

8、检测SVN端口

netstat-ln|grep3690

9、停止重启SVN

killallsvnserve//停止svnserve-d-r/home/用“用户名”替代/svn//启动

10、测试

Windows客户端TortoiseSVN连接。地址为:svn://IP地址,输入配置好的用户名和密码。即可进行测试。

11、检出svn到指定目录

进入需要检出的目标目录,执行

svncheckoutsvn://IP/Project

配置Apache支持HTTP方式访问

1、如果没有安装apache服务,那么安装apache服务及对svn的支持

#apache服务器,让我们的svn服务器支持http协议访问,而不仅是svn://协议yuminstallhttpd
#apache操作svn模块
yuminstallmod_dav_sv

2、修改配置文件/etc/httpd/conf.d/subversion.conf(没有则新建),內容为:

LoadModuledav_svn_modulemodules/mod_dav_svn.so
LoadModuleauthz_svn_modulemodules/mod_authz_svn.so
<Location/svn>
DAVsvn
SVNListParentPathon
SVNPath/home/"用户名"/svn
AuthTypeBasic
SatisfyAny
AuthName"Subversionrepos"
AuthUserFile/home/"用户名"/svn/conf/accesspwd
AuthzSVNAccessFile/home/"用户名"/svn/conf/authz
Requirevalid-user</Location>

3、创建accesspwd 文件

htpasswd-c-m/home/"用户名"/svn/conf/accesspwdroot

4、让apache用户对”/home/“用户名“/svn″目录拥有写权限。

#将用户apache加入root组
usermod-a-Grootapache
#让group对/home/"用户名"/svn目录也有写权限
chmod-Rg+w/home/"用户名"/svn
#查看apache用户属于的组
groupsapache

5、开启httpd服务

servicehttpdrestart

现在就可以通过”http://ip/svn″来访问我们的svn 服务器了

本文出自https://www.cnblogs.com/eczhou/p/7830936.html

原文地址:https://www.jb51.cc/centos/374762.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。