Centos7安装SVN+HTTP

1.首先安装svn

yum install subversion

2.安装httpd

yum install httpd

3.安装apache的svn操作模块

yum install mod_dav_svn
yum install openssl openssl-devel

4.查看svn版本

svnserve –version

5.创建svn版本库

svnadmin create /home/svn/project

6.进入svn的conf文件夹

cd /home/svn/project/conf

7.查看conf下面的文件列表

ls

分别为:authz passwd svnserve.conf

8.修改authz文件

view authz

修改内容如下图:
这里写图片描述

rw : 可读可写
r : 只读
修改完成按esc 再输入 :wq
如果保存错误就强制保存 输入 :wq!

9.修改passwd文件

view passwd

这里写图片描述

10.修改svnserver.conf

首先备份:cp svnserver.conf svnserver.conf.bak

命令:view svnserver.conf

修改内容:
这里写图片描述

11.svn配置完成,启动svn
命令:svnserve -d -r /home/svn/project/
查看进程: ps -aux|grep svn
尝试导入:svn import test svn://123.123.123.123/project/test -m "test" --force-log

提示:尝试导入需要在当前目录有test文件夹存在,如果没有就创建,命令:mkdir test

12.启动出错,错误内容:认证失败( authentication failed)(没有这个错误的就跳过这一条)
处理方法:
方法一:检查三个配置文件中配置前面是否存在空格,例如:
这里写图片描述

方法二:修改/root/.subversion/service配置文件
这里写图片描述

这里写图片描述

修改store-plaintext-passwords = yes
提示:因为文件内容过多,需要光标一直往下,才能看到全部文件内容!
然后查看进程:命令:ps -aux|grep svn
这里写图片描述
结束svn进程:kill 11036
重启svn:svnserve -d -r /home/svn/project/
或者:systemctl start svnserver.service
再次尝试导入:svn import test svn://123.123.123.123/project/test -m "test" --force-log

提示:如果没有错误就是导入成功

13.访问svn
通过TortoiseSVN Repository Browser访问
地址:svn://123.123.123.123/project

14.配置httpd
进入配置文件夹:cd /etc/httpd/conf/httpd.conf
首先备份配置文件:cp httpd.conf httpd.conf.bak

15.修改httpd.conf文件
在文件的末尾添加:

<Location /svn>
            DAV svn
            SVNParentPath  /home/svn/
            # Authentication: Basic
            AuthName "Subversion repository"
            AuthType Basic
            AuthUserFile /etc/httpd/svn-auth.htpasswd

            # Authorization: Authenticated users only
            <LimitExcept GET PROPFIND OPTIONS REPORT>
                Require valid-user
            </LimitExcept>
    </Location>

提示信息:

“<Location /svn>”中的”/svn”表示我们的svn的访问URL为”http://ip/svn”,
        “DAV svn”表示使用”mod_dav_svn”模块,dav是一种http 1.1扩展协议,mod_dav_svn只是该协议的一种应用。
        “SVNParentPath  /var/svn”表示服务”http://ip/svn”请求时,使用”/var/svn”路径下相应的内容。
        AuthName 表示输入用户名和密码时的提示信息
        AuthType 认证类型,这里我们使用基本的认证类型
        AuthUserFile 表示认证文件的位置,我们待会创建它。
        LimitExcept节点指示只对写请求需要用户认证。

16.创建svn-auth.htppasswd文件

命令:htpasswd –c -m /etc/httpd/svn-auth.htpasswd 用户名

例如:htpasswd –c -m /etc/httpd/svn-auth.htpasswd abcd

然后按提示输入两次密码!

17.将apache用户对svn目录授权
依次执行下面3条命令:

   命令1:usermod  -a  -G   root   apache

   命令2:chmod   -R  g+w  /home/svn/project

   命令3:groups   apache

18.启动apache

    命令:systemctl  start  httpd.service

19.启动如果出错处理

   一般都是端口被占用,apache默认端口80,修改监听端口
   修改httpd.conf  配置文件,修改为9999
   重启apache:  systemctl  restart  httpd.service

20.访问svn

   http://123.123.123.123:9999/svn/project/

   输入用户名:abcd    密码:******

21.增加httpd用户:

命令:htpasswd /etc/httpd/svn-auth.htpasswd abcd

输入两次密码,提示添加成功!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值