美文网首页
linux安装centos7.5基于SVN+Apache+svn

linux安装centos7.5基于SVN+Apache+svn

作者: 阿里巴巴技术 | 来源:发表于2018-12-14 17:17 被阅读0次

    介绍说明

    本文介绍的是CentOS7上搭建基于Apache、SVN Server、svnadmin实现web后台可视化管理SVN。
      SVNAdmin应用程序是Subversion授权文件基于Web的GUI。该应用程序不需要数据库后端,它完全基于Subversion授权和用户认证文件。

    旧版卸载

    rpm -e   subversion
    

    软件准备

    安装apache

    yum install httpd -y
    

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

    yum install mod_dav_svn subversion -y
    

    在apache下配置svn
    SVNParentPath /svn #svn的根目录
      #SSLRequireSSL #SSL访问权限,不使用
      AuthType Basic #Basic认证方式
      AuthName "Authorization SVN" #认证时显示的信息
      AuthUserFile /svn/passwd.http #用户文件&密码
      AuthzSVNAccessFile /svn/authz #访问权限控制文件
      Require valid-user #要求真实用户,不能匿名

    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
    SVNListParentPath on
    SVNParentPath /svn
    AuthType Basic
    AuthName "Subversion repositories"
    AuthUserFile /svn/passwd.http
    AuthzSVNAccessFile /svn/authz
    Require valid-user
    </Location>
    RedirectMatch ^(/svn)$ $1/
    

    建立SVN Server仓库

    mkdir -p /svn
    chown -R apache:apache /svn
    chmod -R 777 /svn
    

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

    touch /svn/passwd.http
    touch /svn/authz
    chmod -R 777 /svn/passwd.http
    chmod -R 777 /svn/authz
    

    重启httpd

    systemctl restart httpd.service  #重启httpd
    systemctl enable httpd.service  #设置开机启动
    

    安装mysql

    参考:
    https://www.cnblogs.com/lgqboke/p/6873734.html
    https://www.cnblogs.com/starof/p/4680083.html

    创建svn数据库

    安装jsvnadmin

    下载连接
    链接:https://pan.baidu.com/s/1k-TQStBpKWfu1kHvRZL9ew
    提取码:qoej

    使用Tomcat7部署svnadmin
    上传tomcat

    tar -zxvf apache-tomcat-7.0.57.tar.gz  
    mv apache-tomcat-7.0.57 svnadmin-tomcat
    
    

    上传svnadmin.war

    cd svnadmin-tomcat/webapps
    unzip svnadmin.war -d svnadmin
    

    修改配置

    cd svnadmin/WEB-INF
    vi jdbc.properties
    #修改为自己的mysql数据库连接
    

    创建svnadmin数据库并导入相应数据(UTF-8编码)
    执行db/mysql5.sql 和db/lang/en.sql

    修改svn配置文件

    vi /etc/sysconfig/svnserve
    #内容
    OPTIONS="-r /svn"     #svn主库目录
    

    重启服务

    systemctl restart httpd.service
    

    svnadmin配置管理

    启动svnadmin-tomcat

    /root/svnadmin-tomcat/bin/startup.sh
    

    浏览器访问:http://192.168.xx.xxx:9000/svnadmin/
    自己设置一个用户名和密码

    image.png image.png

    创建svn库,选择(http多库)


    image.png image.png

    授权svn库目录权限

    cd /svn
    chown -R apache:apache bitest/
    chmod -R 777 bitest/
    

    新增用户,很简单自行增加
    设置用户组,进入后选择设置用户


    image.png
    image.png
    image.png

    这里在讲一下新建用户组,配置只读权限
    选择“设置用户组”进入用户组管理,增加readonly 组,配置只读用户


    image.png
    image.png

    进入svn库


    image.png image.png
    image.png

    问题

    认证失败:需要配置库目录权限,为apache用户组

    cd /svn
    chown -R apache:apache 目录
    chmod -R 777 目录
    

    svn: E175002: OPTIONS of '/svn/test': 500 Internal Server Error
    关闭SELinux(Linux的访问控制)

    vi /etc/selinux/config
    #将SELINUX=enforcing改为SELINUX=disabled
    #重启服务器
    reboot
    

    参考文献:

    svn安装参考
    https://blog.csdn.net/huanxianglove/article/details/79487494
    mysql安装参考
    http://jingyan.baidu.com/article/acf728fd10c3d6f8e510a3ef.html

    相关文章

      网友评论

          本文标题:linux安装centos7.5基于SVN+Apache+svn

          本文链接:https://www.haomeiwen.com/subject/cfnvhqtx.html