一、介绍

  本文介绍的是CentOS7上搭建基于Apache、SVN Server、iF.svnadmin实现web后台可视化管理SVN。

  iF.SVNAdmin应用程序是Subversion授权文件基于Web的GUI。该应用程序不需要数据库后端,它完全基于Subversion授权和用户认证文件。

二、 软件准备

  安装相关软件包

  1.安装apache

# yum install httpd -y

  2.安装svn服务器(其中,mod_dav_svn是apache服务器访问svn的一个模块)

# yum install mod_dav_svn subversion -y

  3.安装完成后可以通过如下命令查看是否安装成功

# httpd -version
# svnserve --version
# ls /etc/httpd/modules/ | grep svn

  4.在apache下配置svn

# vi /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>

  5.Apache使用ssl模块配置HTTPS

  a、安装OpenSSL

# yum install mod_ssl openssl

  安装完毕后,会自动生成 /etc/httpd/conf.d/ssl.conf 文件。

  b、生成一个自签名证书

  下面的命令可以被用来产生一个自签名的证书。

  首先,生成2048位的加密私钥

# openssl genrsa -out server.key 2048

  然后,生成证书签名请求(CSR),这里需要填写许多信息,如国家,省市,公司等

# openssl req -new -key server.key -out server.csr

  最后,生成类型为X509的自签名证书。有效期设置3650天,即有效期为10年

# openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt

  创建证书后,将文件复制到对应的目录。

# cp server.crt /etc/pki/tls/certs/
# cp server.key /etc/pki/tls/private/
# cp server.csr /etc/pki/tls/private/

  c、配置Apache Web服务器

  首先,修改下面的配置文件。仅需配置SSLCertificateFile和SSLCertificateKeyFile

# vi /etc/httpd/conf.d/ssl.conf

### overwrite the following parameters ###
SSLCertificateFile /etc/pki/tls/certs/server.crt
SSLCertificateKeyFile /etc/pki/tls/private/server.key ### The following parameter does not need to be modified in case of a self-signed certificate. ###
### If you are using a real certificate, you may receive a certificate bundle. The bundle is added using the following parameters ###
SSLCertificateChainFile /etc/pki/tls/certs/example.com.ca-bundle

  然后,重新启动httpd服务使更改生效。

  三、建立SVN Server仓库

  通过如下命令建立svn仓库,其中/var/www/svn是准备放仓库的目录,这个目录可以放置多个代码仓库。

# mkdir /var/www/svn
# svnadmin create /var/www/svn/test-project
# ls /var/www/svn/test-project # chown -R apache.apache /var/www/svn

  创建用户文件passwd和权限控制文件authz

# touch /var/www/svn/passwd
# touch /var/www/svn/authz
# chmod -R 777 /var/www/svn/passwd
# chmod -R 777 /var/www/svn/authz

  四、配置安装PHP&IF.SVNadmin

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

# yum install php -y

  安装配置if.svnadmin(http://sourceforge.net/projects/ifsvnadmin/files/svnadmin-1.6.2.zip/download)

# unzip svnadmin-1.6.2.zip
# mv iF.SVNAdmin-stable-1.6.2/ /var/www/html/svnadmin
# cd /var/www/html
# chown -R apache.apache svnadmin
# cd /var/www/html/svnadmin
# chmod -R 777 data

  五、启动服务

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

# firewall-cmd --zone=public --add-port=80/tcp --permanent
# firewall-cmd --reload

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

# vi /etc/sysconfig/svnserve

OPTIONS="-r /var/svn"    

  通过如下命令来启用服务

# systemctl start httpd.service

  如下命令使其开机自启动

# systemctl enable httpd.service

  重启Apache

# systemctl restart httpd.service

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

配置完成会提示默认的账户为admin/admin。

六、iF.SVNAdmin使用

设置项目

设置用户

设置权限

查看项目用户

centos7基于SVN+Apache+IF.svnadmin实现SVN的web管理的更多相关文章

  1. centos7搭建SVN+Apache+IF.svnadmin支持https实现web管理SVN

    阅读目录 1. 介绍 2. 软件准备 3. 建立SVN Server仓库 4. 配置安装PHP&IF.SVNadmin 5. 启动服务 1.介绍 公司最近想把Windows server平台的 ...

  2. SVN+Apache+IF.svnadmin支持https实现web管理SVN

    一,软件准备 .安装apache [root@localhost ~]# yum install httpd -y .安装svn服务器(其中,mod_dav_svn是apache服务器访问svn的一个 ...

  3. Centos7 基于SVN+Apache+IF.svnadmin实现web管理

    1.简单介绍: iF.SVNAdmin应用程序是您的Subversion授权文件的基于Web的GUI.它基于PHP 5.3,需要安装一个Web服务器(Apache).该应用程序不需要数据库后端或任何类 ...

  4. centos7搭建SVN+Apache+IF.svnadmin实现web管理SVN

    阅读目录 1. 介绍 2. 软件准备 3. 建立SVN Server仓库 4. 配置安装PHP&IF.SVNadmin 5. 启动服务 1.介绍 公司最近想把Windows server平台的 ...

  5. svn+apache快速安装

    1.[安装基本软件包],  yum -y install httpd subversion mod_dav_svn 2.[验证svn安装是否成功及httpd 的mod_dav模块是否加载] svn - ...

  6. CentOS Linux搭建独立SVN Server全套流程(修改svn仓库地址、服务启动等)

    CentOS Linux搭建独立SVN Server全套流程(修改svn仓库地址.服务启动等) 原 一事能狂便少年 发布于 2016/12/27 11:16 字数 1113 阅读 1.3K  收藏 0 ...

  7. centos7+apache+svn配置 踩坑,注意权限问题。apache应用目录checkout应用 必须用这个命令:svn co file:///home/svn/test/ test ,通过svn add * &&commit 及任意修改都是不行的

    阅读帮助 命令提示符 [root@server-002 ~]# 表示当前服务root用户执行的命令 [svn@server-002 ~]$ 表示普通用户svn执行的命令 [root@localhost ...

  8. CentOS7 基于 subversion 配置 SVN server

    由于 Window Server 环境下,VisualSVN Server Community 版本只支持 15 个同时在线用户,所以彻底放弃 Windows Server,在 Linux Serve ...

  9. Centos7 搭建Svn+Apache服务器

    Svn客户端搭建 1.yum install subversion 2.查看安装版本 svnserve --version 3.创建SVN版本库目录 mkdir -p /opt/svn 4.创建版本库 ...

随机推荐

  1. 潭州课堂25班:Ph201805201 tornado 项目 第五课 增加用户系统-用户中心(课堂笔记)

    tornado 相关说明 在 users 表中创建记录,做测试 在项目根目录下创建 test.py # -*- coding: utf-8 -*- # 斌彬电脑 # @Time : 2019/2/27 ...

  2. 使用CSS选择器实现选择指定子节点

    HTML CSS 具体效果 其他事例 事例图片来自MDN:https://developer.mozilla.org/zh-CN/docs/Web/CSS/:nth-child

  3. Python网络数据采集PDF

    Python网络数据采集(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/16c4GjoAL_uKzdGPjG47S4Q 提取码:febb 复制这段内容后打开百度网盘手 ...

  4. # Do—Now——团队冲刺博客_总结篇

    Do-Now--团队冲刺博客_总结篇 目录 博客链接 作者 1. 第一篇(领航篇) @仇夏 2. 第二篇 @侯泽洋 3. 第三篇 @仇夏 4. 第四篇 @周亚杰 5. 第五篇 @唐才铭 6. 第六篇 ...

  5. JavaScript(二)

    获取元素方法一 可以使用内置对象document上的getElementById方法来获取页面上设置了id属性的元素,获取到的是一个html对象,然后将它赋值给一个变量,比如: <script ...

  6. react-native 打开设置界面

    iOS iOS打开设置还是比较简单的,使用Linking组件即可: Linking.openURL('app-settings:') .catch(err => console.log('err ...

  7. Linux内核笔记:epoll实现原理(一)

    一.说明 针对的内核版本为4.4.10. 本文只是我自己看源码的简单笔记,如果想了解epoll的实现,强烈推荐下面的文章: The Implementation of epoll(1) The Imp ...

  8. web学习路线

  9. mobile_视口

    document.documentElement.clientWidth       不包含滚动条 window.innerWidth                                  ...

  10. Codeforces Round #509 (Div. 2)

    咕咕咕了好多天终于有时间写篇博客了_(:з」∠)_ 打网赛打到自闭的一周,终于靠这场CF找回了一点信心... 1041A - Heist \(ans=max\left \{ a_i \right \} ...