当前位置: 首页 > 编程日记 > 正文

Linux下SVN服务器支持Apache的http和svnserve独立服务器

2019独角兽企业重金招聘Python工程师标准>>> 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 = sallyssecret
pengqiang=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,none
anon-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: svn
svn_bin=/usr/bin
svn_port=3690
svn_home=/home/svn
svn_config=/home/svn/conf/svnserve.confif [ ! -f "$svn_bin/svnserve" ]
thenecho "svnserver startup: cannot start"exit
fi
case "$1" in
start)echo "Starting svnserve..."$svn_bin/svnserve -d -r $svn_home --config-file $svn_config --listen-port $svn_portecho "Successfully!"
;;
stop)echo "Stoping svnserve..."killall svnserveecho "Successfully!"
;;restart)$0 stop$0 start
;;*)
echo "Usage: svn { start | stop | restart } "
exit 1
esac
: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

相关文章:

AWS攻略——使用CodeCommit托管代码

除了我们熟悉的github&#xff0c;各大云厂商也有自己的代码托管服务。本文讲解如何在Amazon的CodeCommit中托管代码。&#xff08;转载请指明出于breaksoftware的csdn博客&#xff09; 根账户登录 AWS有两种账户登录界面。 IAM账户登录界面 根账户登录界面我们先使用根…

使用alterMIME实现添加message footer功能

1. 安装alterMIME tar zxvf altermime-0.3.8.tar.gz cd altermin3-0.3.8 make make install altermine将被编译安装到/usr/local/bin/2. 使用必备条件&#xff1a;一个运行且配置正常的邮件服务器3. 配置AlterMIME3.1 为altermine创建一个系统帐号&#xff0c;如下&#x…

Facebook最新研究:无需额外训练AI,即可加速NLP任务

作者 | KYLE WIGGERS译者 | Kolen出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;自然语言模型通常要解决两个难题&#xff1a;将句子前缀映射到固定大小的表示形式&#xff0c;并使用这些表示形式来预测文本中的下一个单词。在最近的一篇论文&#xff08;https://ar…

PgSQL · 特性分析 · full page write 机制

PG默认每个page的大小为8K&#xff0c;PG数据页写入是以page为单位&#xff0c;但是在断电等情况下&#xff0c;操作系统往往不能保证单个page原子地写入磁盘&#xff0c;这样就极有可能导致部分数据块只写到4K(操作系统是一般以4K为单位)&#xff0c;这些“部分写”的页面包含…

局域网DVD yum源的制作

今天在网上溜达,看到这篇文章不错,于是就转载过来,感谢原作者的辛苦劳动.源地址:http://blog.chinaunix.net/u3/94782/showart_1953260.html一&#xff1a;两台计算机做实验<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />1&…

AWS攻略——使用S3托管静态网页

在AWS上有很多部署静态网页的方式&#xff0c;比如使用EC2或者Lightsail。但是不管使用上述哪种方案&#xff0c;都需要预先部署如Nignx或者Apache等Http服务。这对纯前端同学来说可能有点复杂&#xff0c;而AWS提供了更简单的部署方式——只需要提供静态网页文件的“S3网页托管…

2020年涨薪26-30%,能实现吗?18%数据科学家是这么期待的

作者丨Big Cloud编译 | 武明利&#xff0c;责编丨Carol出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;本报告将深入探讨亚太地区各个背景、不同年龄和不同地点的专业人员对2019/2020年的见解。今年贡献最大的地区来自新加坡和澳大利亚。因为这些是我们最大的数据点&…

AWS攻略——使用CodeBuild进行自动化构建和部署静态网页

首先声明下&#xff0c;使用“CodeBuild”部署并不是“正统”的方案&#xff0c;因为AWS提供了“CodeDeploy”。如果不希望引入太多基础设施&#xff0c;可以考虑直接使用CodeBuild进行部署。&#xff08;转载请指明出于breaksoftware的csdn博客&#xff09; 创建构建项目 kro…

我们需要什么样的数据架构?

作者 | Stephanie shen编译 | 火火酱&#xff0c;责编丨Carol出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;在大数据和数据科学的新时代&#xff0c;对企业而言&#xff0c;一定要有与业务流程保持一致的中心化数据架构&#xff0c;该架构能随业务增长而扩展&#…

Windows Server 2008 R2 之二十九故障转移群集(一)(

关于Windows Server 2008故障转移群集见http://technet.microsoft.com/zh-cn/library/cc732488(WS.10).aspx实验环境&#xff1a;两台已安装好Windows Server 2008 R2的计算机R2DC01、R2DC02,均为DC、DNS&#xff0c;域名为HBYCRSJ.COM,均有两块网卡。分别为心跳网络和本地连接…

基于多核DSP处理器DM8168的视频处理方法

摘要&#xff1a;随着1080P高清视频以及4K超高清晰视频的普及和应用&#xff0c;基于传统单核DSP处理器的视频信息处理已有些力不从心。为此TI公司推出了一款专门用于高清视频处理的多核DSP处理器&#xff0c;它拥有4个不同类型的处理器&#xff0c;使得视频处理达到了一个更高…

AWS攻略——使用CodeBuild进行自动化构建和部署Lambda(Python)

Aws Lambda是Amazon推出的“无服务架构”服务。我们只需要简单的上传代码&#xff0c;做些简单的配置&#xff0c;便可以使用。而且它是按运行时间收费&#xff0c;这对于低频访问的服务来说很划算。具体的介绍可以常见aws lambda的官网。&#xff08;转载请指明出于breaksoftw…

vmware 添加 磁盘 空间

VMware安装linux的时候默认分配的空间是4GB&#xff0c;可能会不够&#xff0c;这个时候可以通过增加一块虚拟硬盘&#xff0c;将/usr或其他内容拷贝过去解决这个问题&#xff1a;创建虚拟硬盘1、关闭VM中正在运行的虚拟系统&#xff1b;2、在虚拟系统名称上点右键&#xff0d;…

Python爬取考研数据:所有985高校、六成211高校均可调剂

又到了一年一度的考研出分时间啦&#xff0c;近期有不少朋友让笔者帮他们分析如何提前做好调剂。复试与调剂总是密不可分。今天&#xff0c;给大家分享一些调剂的重要知识点&#xff0c;希望你在调剂的时候&#xff0c;能明白调剂的趋势与规则。也许&#xff0c;大家对于调剂的…

iOS审核秘籍】提审资源检查大法

iOS审核秘籍】提审资源检查大法 2015/11/27阅读&#xff08;752&#xff09;评论&#xff08;1&#xff09;收藏&#xff08;6&#xff09;加入人人都是产品经理【起点学院】产品经理实战训练营&#xff0c;BAT产品总监手把手带你学产品点此查看详情&#xff01; 本篇主要是提审…

谈一次单元测试驱动代码重构

目前团队并没有QA岗&#xff0c;而且在很长一段时间内&#xff0c;可能也不会设立QA岗&#xff0c;所以我们需要RD保证代码的质量。而鉴于人类天生的“惰性”&#xff0c;很多时候质量完全依赖于作者的能力以及职业素质。于是我在团队内推动单元测试&#xff0c;并要求提升测试…

新机会在广州拓波

公司简介广州拓波软件科技有限公司的前身为 Turbomail工作室&#xff0c;由广州华工信息软件&#xff08;集团&#xff09;有限公司于2002 年成立&#xff0c;是一家专业研发电子邮件系统、企业即时通信和企业短信的开发组织&#xff0c;2005年TurboMail工作室正式发布1.0.2版本…

关于正则表达式,这篇都讲清楚了

作者 | 猪哥来源 | 裸睡的猪&#xff08;ID:rgznai100&#xff09;目前越来越多的网站、编辑器、编程语言都已支持一种叫“正则表达式”的字符串查找“公式”&#xff0c;有过编程经验的同学都应该了解正则表达式&#xff08;Regular Expression 简写regex&#xff09;是什么东…

MJExtension简介

MJExtension简介 前言&#xff1a;关于MJExtension更多的使用&#xff0c;可以到github网站上根据详述学习。 字典转模型比较流行的第三方框架 Mantle所有模型都必须继承自MTModel JSONModel所有模型都必须继承自JSONModel MJExtension不需要强制继承任何其他类 框架需要考虑的…

Discuz!常用函数解析(续)

/*** 产生随机码* param $length - 要多长* param $numberic - 数字还是字符串* return 返回字符串*/function random($length, $numeric 0) {PHP_VERSION < 4.2.0 && mt_srand((double)microtime() * 1000000);if($numeric) {$hash sprintf(%0.$length.d, mt_ran…

基于新型忆阻器的存内计算原理、研究和挑战

作者 | 林钰登、高滨、王小虎、钱鹤、吴华强来源 | 《微纳电子与智能制造》期刊引言过去半个世纪以来 &#xff0c;芯片计算性能的提高主要依赖于场效应晶体管尺寸的缩小。随着特征尺寸的减小 &#xff0c;器件的制备成本和制造工艺难度不断增加 &#xff0c;芯 片性能的提升愈…

3、JPA一些常用的注解

常用注解有下面这些&#xff1a; ①&#xff1a;Entity、Table、Id、GeneratedValue、Column、Basic ②&#xff1a;Transient 用于忽略某个属性&#xff0c;而不对该属性进行持久化操作 ③&#xff1a;Temporal 一、第①组注解 Entity 标注用于实体类声明语句之前&#xff0c…

实战域树部署,Active Directory系列之十九

实战子域部署<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />域树是Active Directory针对NT4的传统域模型所进行的重要改进。在NT4时代的域模型中&#xff0c;每个域都要使用没有层次结构的NETBIOS名称&#xff0c;而且域和域之…

黑科技抗疫,Python开发者大集结!

2020年初&#xff0c;突如其来的新型冠状病毒肺炎打乱了所有人的节奏&#xff0c;但社会各界迅速团结起来&#xff0c;为抗击疫情贡献出自己的力量。除了捐款捐物外&#xff0c;很多科技公司运用5G、大数据、AI、云计算等新互联网技术&#xff0c;以科技的手段助力抗疫&#xf…

Inplayable技术分享

Inplayable技术分享运维设计模式Web安全工具语言python运维 《aws lambda 通过codebuild上线踩坑指南之 lambda 进程被占用 status error 255》《google pay 配置sub/pub回调》《AWS攻略——使用CodeCommit托管代码》《AWS攻略——使用S3托管静态网页》《AWS攻略——使用CodeB…

将数组A中的内容和数组B中的内容进行交换(数组一样大)

#include <stdio.h>int main() {int arr1[10]{1,2,3,4,5,11,14,16,17,12};int arr2[10]{0,6,7,8,9,15,21,18,19,13};int arr3[10];int i0;for(i0;i<sizeof(arr1)/sizeof(arr1[0]);i){arr3[i]arr1[i];arr1[i]arr2[i];arr2[i]arr3[i];//不定义第三个变量的两种种方法&am…

***必备工具

***必备工具一、扫描工具 X-scan 3.1 焦点出的扫描器&#xff0c;国内最优秀的安全扫描软件之一!非常专业的一个扫描器! X-way 2.5 这也上一个非常不错的扫描器哦!功能非常多!使用也不难,***必备工具! SuperScan 3.0 强大的TCP 端口扫描器、Ping 和域名解析器! Namp 3.5 这个就…

通过评估假设行为来学习人类目标

来源| deepmind编译| 武明利&#xff0c;责编| Carol出品 | AI科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09;当我们在现实世界中训练强化学习&#xff08;RL&#xff09;代理时&#xff0c;我们不会希望它们探索不安全的状态&#xff0c;例如将一个移动机器人开进…

ReactiveCocoa入门-part2

ReactiveCocoa是一个框架&#xff0c;它能让你在iOS应用中使用函数响应式编程&#xff08;FRP&#xff09;技术。在本系列教程的第一部分中&#xff0c;你学到了如何将标准的动作与事件处理逻辑替换为发送事件流的信号。你还学到了如何转换、分割和聚合这些信号。 在本系列教程…

VirtualBox虚拟机安装RedHat7.3编译Linux0.01内核

引子 由于需要编译linux0.01内核&#xff0c;而目前的linux版本太高需要降低gcc版本等等&#xff0c;需要做不少调整非常不方便。 所以&#xff0c;直接安装RedHat7.3&#xff0c;这样就好编译linux0.01的内核了。 但是&#xff0c;安装RedHat7.3需要注意一些问题。 下载老…