博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux下SVN服务器支持Apache的http和svnserve独立服务器
阅读量:6982 次
发布时间:2019-06-27

本文共 3154 字,大约阅读时间需要 10 分钟。

hot3.png

 

说明

    服务器操作系统:CentOS 6.6

   关闭防火墙,SElinux

实现

     1、在服务器上安装配置SVN服务;

2、SVN服务支持svnserve独立服务模式访问;

3、SVN服务支持Apache的http模式访问

一、安装

 1.安装apache  

#安装Apache$ yum install httpd   #设置开机启动$ chkconfig httpd on #启动Apache$ service httpd start#查看Apache版本信息$ httpd -version

2.安装subversion  

#使用yum命令在线安装$ yum install subversion #查看svn版本信息$ svnserve --version

 

3.配置svn

 1)创建svn版本库

#创建svn版本库存放目录$ mkdir -p /home/svn $ cd /home/svn#创建svn版本库project$ svnadmin create /home/svn/project

2)设置配置文件 

#创建配置文件目录$ mkdir -p /home/svn/conf #拷贝账号密码配置文件模板$ cp /home/svn/project/conf/passwd /home/svn/conf/passwd #拷贝目录权限配置文件模板$ cp /home/svn/project/conf/authz /home/svn/conf/authz #拷贝全局配置文件模板$ cp /home/svn/project/conf/svnserve.conf  /home/svn/conf/svnserve.conf
#编辑passwd文件$ vim /home/svn/conf/passwd [users]# harry = harryssecret# sally = sallyssecretpengqiang=123456:wq! #保存退出#编辑authz文件$ vim /home/svn/conf/authz [groups]admin=pengqiang[/]@admin = rw* =:wq! #保存退出#配置svnserve.conf全局文件$ vim /home/svn/conf/svnserve.conf [general]#禁止匿名访问,设置为none。默认为read,参数:read,write,noneanon-access=none #授权用户写权限auth-access=write #用户账号密码文件路径,可以写绝对路径password-db=/home/svn/conf/passwd #访问控制权限文件路径,可以写绝对路径authz-db=/home/svn/conf/authz #每个SVN项目的认证命,会在认证提示里显示,建议写项目名称realm=svn :wq! #保存退出

4.启动SVN 

 

#启动svnserve服务,--config-file后面跟全局配置参数文件$ svnserve -d -r /home/svn --config-file /home/svn/conf/svnserve.conf --listen-port 3690#关闭svnserve$ ps -ef|grep svn|grep -v grep #查看进程$ netstat -ln |grep 3690 #检查端口$ kill -9  线程$ killall svnserve #关闭svn

5.设置svn服务开机启动 

 

#编辑,添加以下代码$ vi /etc/init.d/svn #!/bin/sh# processname: svnsvn_bin=/usr/binsvn_port=3690svn_home=/home/svnsvn_config=/home/svn/conf/svnserve.confif [ ! -f "$svn_bin/svnserve" ]then echo "svnserver startup: cannot start" exitficase "$1" instart) echo "Starting svnserve..." $svn_bin/svnserve -d -r $svn_home --config-file $svn_config --listen-port $svn_port echo "Successfully!";;stop) echo "Stoping svnserve..." killall svnserve echo "Successfully!";;restart) $0 stop $0 start;;*)echo "Usage: svn { start | stop | restart } "exit 1esac:wq! #保存退出

$ chmod +x /etc/init.d/svn #添加执行权限

$ chkconfig svn on #开机自启动

$  service svn start #启动

 

二、配置svn支持http访问

 

1、创建账号密码认证文件

  $  htpasswd -cm /home/svn/conf/http_passwd pengqiang

 根据提示输入2次密码即可。

      注意:

 /home/svn/conf/目录下面passwd文件是svnserve独立服务器使用的认证文件,密码没有加密,明文显示。

 /home/svn/conf/目录下面http_passwd文件是Apache的http模式使用的认证文件,密码使用MD5加密。

 passwd和http_passwd文件中,账号密码必须设置相同。

 

2、设置Apache配置文件

 

$ vim /etc/httpd/conf.d/subversion.conf

 

 

 #编辑,在最后添加以下代码 

    <Location  /svn>

 

    DAV svn

    #SVNPath /home/svn

    SVNParentPath /home/svn 

    AuthType Basic

    AuthName "Authorization SVN"

    AuthzSVNAccessFile  /home/svn/conf/authz

    AuthUserFile  /home/svn/conf/http_passwd

    Require valid-user

</Location>

:wq! #保存退出

 

3、设置目录权限(重要,否则http无权限访问svn服务)

    #设置svn目录所有者为Apache服务运行账号apache

    $  chown  -R  apache:apache /home/svn 

4、重启Apache服务

    $ service httpd restart 

 

三、测试

1.TortoiseSVN工具验证

     Windows下安装svn客户端TortoiseSVN。

TortoiseSVN下载地址:http://tortoisesvn.net/downloads.html

安装完成之后,桌面-右键单击,选择TortoiseSVN-版本库浏览器

URL输入:svn://192.168.xxx.xxx/project

用户名:pengqiang

 密码:123456

 

2.浏览器验证http

  URL输入:http://192.168.xx.xxx/svn/project

 

参考:http://www.osyunwei.com/archives/9145.html

 

转载于:https://my.oschina.net/pengqiang/blog/535009

你可能感兴趣的文章
20061025: 用上了 ClearType 字体
查看>>
20单位均线,是交易的生命线。
查看>>
Merge Two Sorted Lists
查看>>
黑盒测试用例编写规范(一)
查看>>
EAI Bridges简介
查看>>
checkbox全选/全不选,子复选框全选父复选框选中
查看>>
12.2第一周总结
查看>>
nginx-2-nginx的反向代理
查看>>
vim编辑器
查看>>
Constructor&object 的联系与区别
查看>>
Mysql--变量
查看>>
单引号插入数据库
查看>>
Oracle备份和恢复
查看>>
bzoj千题计划128:bzoj4552: [Tjoi2016&Heoi2016]排序
查看>>
bzoj千题计划157:bzoj1220:[HNOI2002]跳蚤
查看>>
bzoj千题计划212:bzoj1864: [Zjoi2006]三色二叉树
查看>>
Android开发之ProgressDialog在独立Thread线程中更新进度
查看>>
Objective-C内存管理机制
查看>>
数据结构化与保存
查看>>
图片内容保存到数据库,并从数据库里获取图片
查看>>