阿里云 Linux SVN Http服务搭建

被刻印的时光 ゝ 提交于 2019-12-08 12:49:06

第一步:通过yum命令安装SVN,命令如下:

-> yum -y install subversion

此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行

第二步:创建版本库目录并初始化仓库

-> mkdir /var/svn/repo/xxx      (创建目录,其中xxx为你的仓库名称)

-> svnadmin create /var/svn/repo/xxxx (初始化仓库)

执行结束后可到目录下查看,看到如下结果,刚svn仓库初始化完成

第三步:修改配置

进入到仓库下conf目录,如下

authz:负责账号权限管理,如某个仓库,哪些用户分别有读、写权限

passwd:账户的密码管理

svnserve.conf:主要是svn的配置管理

vi authz 进行编辑,在文件末尾添加如下内容,代表用户ys对仓库ys下所有目录及文件有r(read读)w(write写)权限,保存完成

vi passwd进行编辑,在文件末尾添加ys = ys,表示创建一个账户为ys,密码为ys的用户

vi svnserve.conf进行编辑,,找到如下4行,去掉注释,注意,前边空格也要去掉,否则可能出意想不到的错误。

至此svn配置完成,但大多数情况,此时并不能正常访问,还需要进行下一步操作

第四步:防火墙开启

多数情况下服务器安装完成,配置完成后,无法连接svn服务器,均是防火墙问题,大家按照如下3条命令逐一执行即可

>/sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT

>/etc/init.d/iptables save

>service iptables restart

第五步:启动svn服务器

终于配置完了,赶快启动看看

>svnserve -d -r /var/svn/svnrepos

第六步:客户端访问svn服务器

在windows客户端,输入地址:svn://ip:3690/xxxx   (iP地址为你linux的ip,xxxx为前文创建的仓库名称,3690为svn默认端口)

弹出输入用户名和密码,输入即可访问

到此,Linux下svn服务器搭建就总结完毕,但很多情况我们会用http在浏览器直接访问仓库,为此还需要继续进行下一步操作

第七步:安装apache服务

-> yum -y install httpd

启动: service httpd start

重启:service httpd restart

重载:service httpd reload

第七步:配置apache

创建httppasswd文件,命令释义: 在/var/svn/repo/ys/conf目录下创建http_passwd文件来保存httpd访问svn的用户名密码。因为apache采用http协议,svn是tcp协议,他们的认证文件不能共用,因些需要另建一份。

-> htpasswd -c -m /var/svn/repo/ys/conf/http_passwd ys

接下来需要给apache用户添加权限,让其拥有svn仓库的写权限,并修改仓库所性用户及组为apache

第八步,添加apache-svn配置文件

说明:DAV为svn支持文件,svnpath为svn版本库目录,只有一个版本库时使用svnpath,如果有多个版本时使用                  svnparentpath和svnlistparentpath配合使用;AuthaSVNAccessFile为权限文件目录,跟svn协议共同使用一个权限文件即可;AuthUserFile为用户认证文件,填入第3步配置的认证文件目录;Require为用户是否需要验证。

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn/>
DAV svn
#SVNPath /home/svn
SVNListParentPath on
SVNParentPath /var/svn/repo
# # Limit write permission to list of valid users.
# <LimitExcept GET PROPFIND OPTIONS REPORT>
# # Require SSL connection for password protection.
# # SSLRequireSSL
#
AuthType Basic
AuthName "Authorization SVN"
AuthzSVNAccessFile /var/svn/repo/ys/conf/authz
AuthUserFile /var/svn/repo/ys/conf/http_passwd
Require valid-user
# </LimitExcept>
</Location>

到这里,svn及apache配置完成了,可以执行 service httpd restart重启apache服务,并在浏览器中输入地址就能访问了。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!