centos7搭建svn并通过http访问

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7搭建svn并通过http访问相关的知识,希望对你有一定的参考价值。

  • 安装httpd
    安装httpd服务:
  • yum install httpd

    检查httpd是否安装成功:

    httpd -version
    Server version: Apache/2.4.6 (CentOS)
    Server built: Jul 18 2016 15:30:14

    1. 安装svnserve

    安装svnserve服务:

    yum install subversion

    检查svnserve是否安装成功:

    svnserve --version
    svnserve, version 1.7.14 (r1542130)
    compiled Nov 20 2015, 19:25:09

    1. 安装mod_dav_svn

    mod_dav_svn是apache服务器访问svn的一个模块。通过yum安装:

    yum install mod_dav_svn

    安装成功后,会有mod_dav_svn.so和mod_authz_svn.so两个文件。

    find / -name mod_dav_svn.so
    /usr/lib64/httpd/modules/mod_dav_svn.so

    find / -name mod_authz_svn.so
    /usr/lib64/httpd/modules/mod_authz_svn.so

    1. 创建svn仓库

    mkdir /var/svn
    svnadmin create /var/svn/spring-hello-world

    ll /var/svn/
    drwxr-xr-x. 6 root root 80 Nov 10 14:42 spring-hello-world

    ll /var/svn/Project/
    drwxr-xr-x. 2 root root 51 Nov 10 14:42 conf
    drwxr-sr-x. 6 root root 4096 Nov 10 14:42 db
    -r--r--r--. 1 root root 2 Nov 10 14:42 format
    drwxr-xr-x. 2 root root 4096 Nov 10 14:42 hooks
    drwxr-xr-x. 2 root root 39 Nov 10 14:42 locks
    -rw-r--r--. 1 root root 229 Nov 10 14:42 README.txt

    1. 配置权限

    修改svn仓库的用户组为apache:

    chown -R apache:apache /var/svn/spring-hello-world

    创建用户文件passwd:

    touch /var/svn/passwd #创建用户文件

    htpasswd /var/svn/passwd admin #创建用户admin
    htpasswd /var/svn/passwd guest #创建用户guest

    cat /var/svn/passwd
    admin:$apr1$UCkPzZ2x$tnDk2rgZoiaURPzO2e57t0
    guest:$apr1$vX1RIUq6$OKS1bqKZSptzsPDYUOJ5x.

    创建权限文件authz:

    cp /var/svn/spring-hello-world/conf/authz /var/svn/authz

    cat /var/svn/authz
    [/]
    admin = rw
    guest = r

    1. 配置httpd

    touch /etc/httpd/conf.d/subversion.conf

    cat /etc/httpd/conf.d/subversion.conf
    <Location /svn>
    DAV svn
    SVNParentPath /var/svn
    AuthType Basic
    AuthName "Authorization SVN"
    AuthzSVNAccessFile /var/svn/authz
    AuthUserFile /var/svn/passwd
    Require valid-user
    </Location>

    1. 启动httpd服务

    systemctl start httpd.service

    客户端使用http://IP/svn/Project就可以访问刚才建立的svn仓库了。 如果返回403错误,可能是防火墙问题。增加防火墙规则:
    firewall-cmd --permanent --add-service=http
    firewall-cmd --permanent --add-service=https
    firewall-cmd --reload

    以上是关于centos7搭建svn并通过http访问的主要内容,如果未能解决你的问题,请参考以下文章

    CentOS7搭建SVN+http访问

    CentOS搭建SVN服务器,并通过Apache HTTP方式访问

    基于Cent OS7搭建apache网站后的访问控制配置详解

    Centos7 64bit Linux系统安装SVN 和 http访问配置

    十cent OS下搭建SVN服务器

    centos7 搭建svn服务器&客户端的访问&备份迁移