CentOS7搭建SVN+http访问
Posted lmmly
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7搭建SVN+http访问相关的知识,希望对你有一定的参考价值。
1,准备工作
关闭SELINUX
查看下状态getenforce
,如果是Enforcing则关闭
临时关闭:setenforce 0
永久关闭:vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled(这个reboot生效)
2,安装相应软件
安装subversion:yum install subversion
安装apache:yum install httpd
apache安装svn模块:yum iinstall mod_dav_svn
3,创建svn仓库
cd /var/svndata
(这里我在/var路径下创建了svndata目录,进入svndata)
svnadmin create repo1
(创建仓库repo1,仓库名字随便)
4,在repo1/conf下配置相关文件
配置authz文件(认证规则)
添加如下信息:[svndata:/]
换行admin = rw
(这个admin用户为后面apache要创建的)
[repo1:/]
换行test = rw
(这个用户先用来测试svn是否部署成功)
passwd文件(用户帐户信息,这里不配置admin,因为admin用户的密码信息apache会配置)
添加如下信息:test=test
(测试是test的密码)
svnserve.conf(主要配置权限控制文件)
取消以下注释:
anon-access = read
匿名访问权限,默认read
auth-access = write
授权用户权限
password-db = passwd
密码数据库位置
authz-db = authz
访问控制文件
5,配置防护墙开启3690端口(svn服务),重启防火墙(关闭防火墙的忽略这步)
firewall-cmd --permanent --zone=public --add-port=3690/tcp
systemctl restart firewalld.service
6,测试svn是否安装成功
启动svn:svnserve -d -r /var/svndata
这里我安装了客户端TortoiseSVN ,直接checkout,地址栏输入svn://ip/repo1
(这个ip为你centos服务器的ip),账户密码为之前设置的test
7,修改apache的httpd.conf配置文件,apache默认安装时该配置文件在/etc/httpd/conf/路径下
找到’LoadModule‘,在其下添加一下信息
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
<Location /svndata>
DAV svn
SVNPath /var/svndata/repo1
AuthType Basic
AuthName "Subversion repos"
AuthUserFile /etc/httpd/svn.htpasswd
AuthzSVNAccessFile /var/svndata/repo1/conf/authz
Require valid-user
</Location>
相关配置解释
DAV svn 表示使用mod_dav_svn模块
SVNPath /var/svndata/repo1 表示你仓库的地址,注意因为我只有一个仓库所以用SVNPath而不是SVNParentPath
svn.htpasswd文件是http访问时配置的账户密码信息
8,创建svn.htpasswd文件
htpasswd -cm /etc/httpd/svn.htpasswd admin
(然后输入admin的密码,密码随便,注意这个admin账户的svn访问权限之前有配置过)
9,让apache用户对svn有读写权限
首先我的svndata的用户和用户组都是root,所以我把apache加入到root用户组
usermod -a -G root apache
然后给用户组加个写权限
chmod -R g+w /var/svndata/
10,启动apache
给apache开通防火墙(我这里apache的端口默认是80)
firewall-cmd --permanent --zone=public --add-port=80/tcp
systemctl restart firewalld.service
启动apache:systemctl start httpd
11,在svn客户端地址栏输入http://ip/svndata(账户密码为第8步所配置的)
到此,svn+http安装完毕
如有疑问,欢迎指正交流
以上是关于CentOS7搭建SVN+http访问的主要内容,如果未能解决你的问题,请参考以下文章