本文主要介绍如何在CentOS7环境下集成Apache和SVN,完成后可以通过浏览器访问SVN仓库.

1.查看系统环境,关闭防火墙和SELinux.

 [root@Docker /]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld()
[root@Docker /]# getenforce
Disabled
[root@Docker /]# uname -a
Linux Docker 3.10.-693.21..el7.x86_64 # SMP Wed Mar :: UTC x86_64 x86_64 x86_64 GNU/Linux
[root@Docker /]# cat /etc/redhat-release
CentOS Linux release 7.4. (Core)
[root@Docker /]#

2.安装软件包和Apache SVN模块.

  yum install httpd mod_dav_svn subversion

3. 验证安装结果.

 [root@Docker /]# httpd -version
Server version: Apache/2.4. (CentOS)
Server built: Apr ::
[root@Docker /]# svnserve --version
svnserve, version 1.7. (r1542130)
compiled Apr , ::

4.验证Apache SVN模块是否安装成功,需要检查mod_dav_svn.so和mod_authz_svn.so文件.

 [root@Docker modules]# pwd
/etc/httpd/modules
[root@Docker modules]# ll | egrep "mod_dav_svn.so|mod_authz_svn.so"
-rwxr-xr-x root root Apr : mod_authz_svn.so
-rwxr-xr-x root root Apr : mod_dav_svn.so

5.使用svnadmin命令创建SVN仓库repos.

 [root@Docker /]# mkdir /var/www/svn
[root@Docker /]# cd /var/www/svn/
[root@Docker svn]# svnadmin create repos
[root@Docker svn]# tree -d repos/
repos/
├── conf
├── db
│   ├── revprops
│   │   └──
│   ├── revs
│   │   └──
│   ├── transactions
│   └── txn-protorevs
├── hooks
└── locks directories

6.修改repos目录属主和属组为apache.

 [root@Docker svn]# chown -R apache:apache repos/
[root@Docker svn]# ll
total
drwxr-xr-x apache apache May : repos

7.复制/var/www/svn/repos/conf 下的权限管理文件authz到 /var/www/svn下,并创建用户认证文件passwd,并且设置隐藏属性.

 [root@Docker svn]# cp /var/www/svn/repos/conf/authz /var/www/svn/
[root@Docker svn]# cd /var/www/svn/repos
[root@Docker repos]# touch .passwd

8.通过htpasswd命令建立SVN用户svnuser并将用户信息保存在passwd文件中.

 [root@Docker repos]# htpasswd ./.passwd svnuser
New password:
Re-type new password:
Adding password for user svnuser
[root@Docker repos]# cat .passwd
svnuser:$apr1$ThE7aO2O$CQo.OIs.8TOqUFaFr7b3H0

9.修改authz文件并设置相应权限:

在[groups]下添加组

[/] 相当于/var/www/svn这个目录,赋予权限给用户组

[repos:/] 是指repos库

[repos:/desgin]是repos下的desgin目录

rw是指可读写权限

 [root@Docker svn]# vim authz
[root@Docker svn]# grep -v "^#" authz [groups]
admin_group=svnuser,svnuser2
project_group=svnuser3,svnuser4
project2_group=svnuser5,svnuser6 [/]
@admin_group=rw [repos:/]
@project_group=rw [repos:/desgin]
@project_group=rw [repos2:/]
@project2_group=rw

10.关联Apache与SVN,创建subversion.conf文件.Locaion后的名字可以自定义,不需要与仓库名一致,这里我们定义为/documents,这样后面访问时直接输入http://x.x.x.x/documents即可打开仓库

[root@Docker /]# 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 /documents>
DAV svn
SVNParentPath /var/www/svn
SVNListParentPath On
AuthType Basic
AuthName "Project SVN"
AuthUserFile /var/www/svn/repos/.passwd
Require valid-user
AuthzSVNAccessFile /var/www/svn/authz
</Location>

11.启动Apache,在浏览器中输入http://x.x.x.x/documents弹出认证窗口,输入用户认证信息即可看到SVN仓库repos.

 [root@Docker /]# systemctl start httpd.service

CentOS7集成Apache和SVN的更多相关文章

  1. Apache Project SVN Download Sit

    apache project svn download sit : http://svn.apache.org/repos/asf 如果想要研究相关项目的源码的话.或者想要成为某个项目的开发者, 就可 ...

  2. linux上nginx+apache 搭建 svn服务器

    众所周知,nginx目前是不支持svn的,并且由于机房网络只开了80和22(ssh)端口,所以这时候就没法单独在服务器上搭建apache+svn .所以就产生了 nginx + apache + sv ...

  3. Apache 下SVN项目管理使用说明

    Apache 下SVN项目管理使用说明 (1)Apaceh和SVN先要装好. (2)在apache的目录下找到httpd.conf文件,在最后一行增加如下配置 Include conf/svn.pro ...

  4. 基于腾讯Centos7云服务器搭建SVN版本控制库

    基于腾讯Centos7云服务器搭建SVN版本控制库 最近在和小伙伴组队参加一个关于人工智能的比赛,无奈不知道怎么处理好每个人的代码托管问题,于是找到了晚上免费svn托管服务器的服务,但是所给的免费空间 ...

  5. Linux整合Apache和SVN

    1.安装APR-1.2.7和APR-util-1.2.7  (下载地址:http://apr.apache.org/) #tar zxvf  apr-1.2.7.tar.gz #cd   apr-1. ...

  6. 在Linux(CentOS 6.6)服务器上安装并配置基于Apache的SVN服务器

    #!/bin/bash # # 在Linux(CentOS 6.6)服务器上安装并配置基于Apache的SVN服务器: # # .安装服务 # .创建svn版本库 # .创建svn用户 # .配置sv ...

  7. CentOS7安装 Apache HTTP 服务器

    CentOS7安装 Apache HTTP 服务器 时间:2015-05-02 00:45来源:linux.cn 作者:linux.cn 举报 点击:11457次 不管你因为什么原因使用服务器,大部分 ...

  8. centos7.3给搭建SVN服务器

    centos7.3给搭建SVN服务器 1 安装svnserver yum install subversion 2 查看版本 svnserve --version 3 创建版本库 3.1 运行以下命令 ...

  9. centos7安装apache http server启动失败--Failed to start The Apache HTTP Server.

    centos7安装apache http server启动失败     除了nginx可以开启http服务外,apche http server也可以开启http服务,安装过程如下:1. 首先,检测是 ...

随机推荐

  1. The pit of an if statement in Java

    package the.pit.of.an.ifstatement.injava; public class ThePitOfAnIfStatementInJava { public static v ...

  2. SQL Server中【case...end】的用法

    在SQL Server中 case...end 语句,一般有如下两种用法: 1.相当于C#中if...else,例: select CName,头衔=case when CLevel='A1' the ...

  3. 使用Virtual Audio Cable软件实现电脑混音支持电脑录音

    http://blog.csdn.net/cuoban/article/details/50552644

  4. Windows 10 host where Credential Guard or Device Guard is enabled fails when running Workstation (2146361)

    To disable Device Guard or Credential Guard on Itanium based computers: Disable the group policy set ...

  5. Windows Socket和Linux Socket编程的区别 ZZ

    socket相关程序从Windows移植到Linux下需要注意的: 1)头文件 Windows下winsock.h/winsock2.h Linux下sys/socket.h 错误处理:errno.h ...

  6. 沉淀再出发:web服务器和应用服务器之间的区别和联系

    沉淀再出发:web服务器和应用服务器之间的区别和联系 一.前言 关于后端,我们一般有三种服务器(当然还有文件服务器等),Web服务器,应用程序服务器和数据库服务器,其中前面两个的概念已经非常模糊了,但 ...

  7. 阿里云 CentOS 镜像和 EPEL 源

    配置阿里云网络yum源 阿里云镜像源地址http://mirrors.aliyun.com/ 1.备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.re ...

  8. 简单说说Spring Security 使用(附加验证码登录,自定义认证)

    先看官方文档:http://docs.spring.io/spring-security/site/docs/4.0.x/reference/htmlsingle/ spring security4已 ...

  9. Oracle Golden Gate概要

    Oracle GoldenGate简介 Oracle Golden Gate用于源数据库与目标数据库的数据复制备份:可以在异构的环境(各种操作系统和数据库)之间实现数据亚秒级的实时复制备份:以及可以在 ...

  10. 协议森林03 IP接力赛 (IP, ARP, RIP和BGP协议)

    网络层(network layer)是实现互联网的最重要的一层.正是在网络层面上,各个局域网根据IP协议相互连接,最终构成覆盖全球的Internet.更高层的协议,无论是TCP还是UDP,必须通过网络 ...