学派吧SVN+Apache+IF.svnadmin支持https实现web管理SVN -linux教程

阅读目录

  • 1. 介绍

  • 2. 软件准备

  • 3. 建立SVN Server仓库

  • 4. 配置安装PHP&IF.SVNadmin

  • 5. 启动服务

1.介绍

公司最近想把Windows server平台的SVN迁移到Linux平台;这边经过测试成功,所以写个随笔记录一下

今天写的是CentOS7上搭建基于Apache,http访问的SVN Server;和IF.svnadmin实现web后台可视化管理SVN

iF.SVNAdmin

iF.SVNAdmin应用程序是您的Subversion授权文件的基于Web的GUI。它基于PHP 5.3,需要安装一个Web服务器(Apache)。该应用程序不需要数据库后端或任何类似的,它完全基于Subversion授权和用户认证文件。(+包含用户和组的LDAP支持)

2. 软件准备

安装相关软件包

安装过程如下:1.安装apache

[root@localhost ~]# yum install httpd -y2.安装svn服务器(其中,mod_dav_svn是apache服务器访问svn的一个模块)

[root@localhost ~]# yum install mod_dav_svn subversion -y

3.安装完成后可以通过如下命令查看是否安装成功
[root@localhost ~]# httpd -version

[root@localhost ~]# svnserve --version

[root@localhost ~]# ls /etc/httpd/modules/ | grep svn

mod_authz_svn.so
mod_dav_svn.so

3.在apache下配置svn 

[root@localhost ~]# vim /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
SVNParentPath /var/www/svn   #svn的根目录
SSLRequireSSL #SSL访问权限 AuthType Basic #Basic认证方式 AuthName "Authorization SVN" #认证时显示的信息 AuthUserFile /var/www/svn/passwd #用户文件&密码 AuthzSVNAccessFile /var/www/svn/authz #访问权限控制文件 Require valid-user #要求真实用户,不能匿名 </Location>

3. 建立SVN Server仓库

通过如下命令建立svn仓库

其中/var/www/svn是准备放仓库的目录,这个目录可以放置多个代码仓库

[root@localhost ~]# mkdir /var/www/svn

[root@localhost ~]# svnadmin create /var/www/svn/sungeek
[root@localhost ~]# ls /var/www/svn/sungeek             --->  conf  db  format  hooks  locks  README.txt
[root@localhost ~]# chown -R apache.apache /var/www/svn

创建用户文件passwd和权限控制文件authz
[root@localhost ~]# touch /var/www/svn/passwd 

[root@localhost ~]# touch /var/www/svn/authz

4. 配置安装PHP&IF.SVNadmin

由于iF.SVNAdmin使用php写的,因此我们需要安装php

[root@localhost ~]# yum install php -y

安装配置if.svnadmin

[root@localhost ~]# wget http://sourceforge.net/projects/ifsvnadmin/files/svnadmin-1.6.2.zip/download[root@localhost ~]# cd /usr/src/[root@localhost src]# unzip iF.SVNAdmin-stable-1.6.2[root@localhost iF.SVNAdmin-stable-1.6.2]# cp -r iF.SVNAdmin-stable-1.6.2/ /var/www/html/svnadmin
[root@localhost ~]# cd /var/www/html
[root@localhost html]# chown -R apache.apache svnadmin
[root@localhost html]# cd /var/www/html/svnadmin
[root@localhost html]# chmod -R 777 data

5.启动服务

如果开启了防火墙, 需要开启httpd访问权限

[root@localhost ~]# firewall-cmd --permanent --add-service=http
[root@localhost ~]# firewall-cmd --permanent --add-service=https
[root@localhost ~]# firewall-cmd --reload 

通过查看文件/usr/lib/systemd/system/svnserve.service, 了解到svnserver的配置文件是/etc/sysconfig/svnserve
修改/etc/sysconfig/svnserve

[root@localhost ~]# vim /etc/sysconfig/svnserve
OPTIONS="-r /var/svn"     ======> OPTIONS="-r /var/www/svn" 

通过如下命令来启用服务

[root@localhost ~]# systemctl start httpd.service

如下命令使其开机自启动

[root@localhost ~]# systemctl enable httpd.service

重启Apache

[root@localhost ~]# systemctl restart httpd.service

启动webserver服务后,浏览器地址输入http://ip/svnadmin出现配置界面,输入下图中配置信息,输入每个配置信息可以点击旁边的Test测试是否输入正确,最后保存配置

学派吧SVN+Apache+IF.svnadmin支持https实现web管理SVN -linux教程

学派吧SVN+Apache+IF.svnadmin支持https实现web管理SVN -linux教程

保存后,会提示默认的账户为admin/admin。

登陆后我们可以在“Repositories”下“add”,添加项目目录;

在"Users"下添加用户;

在“Access-Paths”下关联对应项目的用户,并分配相关读写权限。

以上就是SVN+Apache+IF.svnadmin支持https实现web管理SVN 的详细内容,更多请关注学派吧其它相关文章!

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/server/2751.html

赞 (0)
打赏 微信扫一扫 微信扫一扫
学派吧-在Linux环境下g++编译GDAL动态库的操作方法-linux教程
上一篇 2018年12月19日 下午9:49
学派吧-利用ssh反向代理以及autossh实现从外网连接内网-linux教程
下一篇 2018年12月19日 下午9:49

相关推荐

  • linux安装安全狗

    [v_notice]现在给很多用户安装了宝塔、但是怕不有攻击、所以安装个安全狗[/v_notice]使用wget方式下载发布包:wget http://down.safedog.cn/safedog_linux64.tar.gz 安装网站安全狗 在root 帐户下执行以下命令: tar xzvf safedog_linux64.tar.gz(在这里一定要看解…

    服务器运维 2018年8月13日
    4.7K00
  • win2008架设vpn如何新建用户指定IP地址的方法教程(图文)-windows教程-学派吧

    这篇文章主要介绍了win2008架设vpn 新建用户指定IP地址的方法,需要的朋友可以参考下 008架设vpn服务器完毕,新建账户,分配了静态IP地址,但是客户端拨号后获取了另一个IP怎么才能给客户端指定IP,这里就为大家分享一下 自己解决了,具体如下1、开启NPS, 2、创建并配置策略 (备注:本人新建账户均归属guests,故选择用户组添加“GUESTS…

    服务器运维 2018年12月2日
    4.1K00
  • 学派吧-linux下Shell如何获取某目录下所有文件夹的名称详解-linux教程

    学派吧-这篇文章主要介绍了linux Shell获取某目录下所有文件夹的名称,需要的朋友可以参考下 查看目录下面的所有文件: #!/bin/bash cd /目标目录 for file in $(ls *) do echo $file done 延伸的方法,查看目录下面的所有目录 #!/bin/bash cd /export/bak/original_doc…

    服务器运维 2018年12月19日
    2.5K00
  • 两台服务器文件实时同步如何在linux下实现的方案教程-linux教程

    如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624商祺云-阿里代理、景安代理、西部代理 假设有如下需求: 假设两个服务器: 192.168.0.1 源服务器 有目录 /opt/test/ 192.168.0.2 目标服务器 有目录 /opt/bak/test/ 实现的目的就是保持这两个服务器某个文件目录保持实时同步 实现方式: …

    服务器运维 2019年1月14日
    3.2K00
  • Linux中关于别名与二进制的使用教程-linux教程

    这篇文章主要给大家介绍了关于Linux中别名与二进制的使用方法,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。 本文介绍的是关于Linux中别名与二进制使用的相关内容,分享出来给大家参考,下面来看看详细的介绍: 二进制 一般二进制这个名词听上去高深莫测,然而当你了解它之后其实并不复杂,在计算机里处理数据一般都是由二进制处理。…

    2019年1月1日
    2.3K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部