Win7 环境 Apache2.2.x与Subversion 1.8.8 结合搭建版本控制环境

httpd-2.2.25-win32-x86-openssl-0.9.8y安装教程 立即下载

一、软件版本:

Subversion Version : Setup-Subversion-1.8.8.msi

Apache Version: httpd-2.2.25-win32-x86-openssl-0.9.8y.msi

如果版本不匹配会有各种问题。(Apache 2.0.x版本和 2.2.x版本有区别)

二、分别安装 Apache 和 Subversion,顺序没有要求,但是如果先安装Apache,后安装Subversion的话可以减少很多的手动配置项。这里选择手动配置。

下文约定使用Apache_Home表示Apache的安装路径,Subversion_HOME表示Subversion的安装路径。

三、安装完毕后配置步骤如下:

1、复制文件:

将Subversion\bin目录下的mod_dav_svn.so和mod_authz_svn.so复制到Apache2.2\modules\目录下。

将Apache2.2\bin下面的所有dll文件备份,然后将Subversion\bin下的所有dll文件复制到

Apache2.2\bin目录,再把刚才备份过的文件复制回来。

 

2、修改Apache2.2/conf/httpd.conf文件:

LoadModule dav_module modules/mod_dav.so

LoadModule dav_fs_modulemodules/mod_dav_fs.so

将这两行的注释去掉,然后在最下面添加:

LoadModule dav_svn_modulemodules/mod_dav_svn.so

LoadModule authz_svn_modulemodules/mod_authz_svn.so

修改监听端口,防止和其他进程冲突造成无法启动等问题,这里使用8080。

Listen 8080

修改ServerName,否则由于未注册DNS可能会出现一个警告

ServerName ip address:8080

3、在httpd.conf最下面添加一个基本的authz配置(这里以多版本库配置为例)

<Location /svn>

DAV svn

SVNParentPath D:/svnrepo

SVNListParentPath on

AuthzSVNAccessFileD:/apps/Apache2.2/conf/access.auth

Satisfy Any

Require valid-user

AuthType Basic

AuthName "Auth for SVN Repo"

AuthUserFile D:/apps/Apache2.2/conf/users.auth

Require valid-user

</Location>

#RedirectMatch ^(/svn)$ $1/

 

各项含义如下:

location标签后面的路径表示通过http访问时的路径,如http://ip/svn

DAV svn 表示对于location配置的路径使用哪个模块进行处理,这里是subversion。

SVNParentPath是当一个目录下存在多个版本库时使用的配置,表示各版本库父目录的本地实际路径;如果一个目录下只有一个版本库,需要使用SVNPath进行配置,此时如果再增加新的项目版本库时,就要配置多个<location/>

SVNListParentPath on 在SubVersion1.3及上版本,使用该配置项列出由SVNParentPath指定目录下的所有版本库。

单库访问路径:http://ip/svn  多库访问路径:http://ip/svn/repo1http://ip/svn/repo2等。

AuthzSVNAccessFile权限配置文件的位置,用来控制用户对版本库的访问权限。

Satisfy Any 和 Require valid-user先尝试匿名,如果不行再尝试认证用户。Satisfy Any可以不用配置。

AuthType Basic 认证方式,这里使用基本认证方式,即用户名+密码,通常已足够。

AuthName 认证时显示在用户名密码输入框上的文本,起简短的提示作用。

AuthUserFile 用户认证文件,用来存储使用htpasswd.exe生成的用户名和MD5加密的密码。

Require valid-user 限定用户只有输入正确的用户名密码才能访问这个路径。

RedirectMatch ^(/svn)$ $1/ 表示location 路径匹配模式,比如http://ip/svn和http://ipd/svn/都可以进行访问,此处已注释掉,因为实际测试时不使用该模式匹配也可以。

 

4、生成用户认证文件

用户认证文件(即密码文件)使用Apache_Home/bin/htpasswd.exe来生成,第一次执行时使用

htpasswd –c passwd <username>,然后输入并确认密码,即可在Apache_Home/bin下面生成名为passwd的文件,文件名可以任意指定,位置也可以任意指定,只要在AuthUserFile中配置正确即可。如果要在passwd中追加新的用户名和密码,需要使用htpasswd passwd <username>命令,即不使用-c参数。

 

5、使用mod_authz_svn控制访问目录的权限

首先需要让Apache将mod_authz_svn模块加载,见上述.so文件拷贝和httpd.conf配置。

权限控制文件使用AuthzSVNAccessFile指定,该文件同passwd文件一样,名称任意,位置任意。该权限策略文件的内容格式可以在Subversion创建的的版本库的conf目录下找到,名称为authz。

用法说明:配置的路径被指定为[repoName:path]或者[path],如果未明确指定一个库,访问规则将应用到由SVNParentPath指定的目录下所有版本库中。文件配置可能如下:

[groups]

admin = shenq

developer_team1 = svntest1,svntest2

developer_team2 = svntest3,svntest4

docs = svntest5,svntest6

#使用/为所有库指定默认访问规则,如果希望直接访问所有库的父目录,需要配置* = r,表示所有人#可读,如果配置其他用户的话,不能访问,只能访问具体的库。

[/]

@admin = rw

* = r

[project1:/]

@ developer_team1 = rw

svntest3 = rw

svntest4 =

[project2:/]

@ developer_team2 = rw

[/src/resources]

@docs = rw

 

其他相关说明

1、svnserver的作用是使用基于http的自定义svn协议进行版本库访问。所以如果仅仅使用http的方式访问版本库,svnserver可以不启动。

2、关于dll文件的拷贝,Apache和SubVersion配合使用时,Apache需要读取SubVersion使用的一些dll文件,可以拷贝到Apache_HOME/bin下,也可以将SubVersion_HOME/bin加入到path环境变量中。

3、由于Subversion需要版本化的控制,因此标准的Http协议不能满足需求。要让Apache与Subversion协同工作,需要使用WebDAV(Web分布式创作与版本管理Web-based Distributed Authoring and Versioning),WebDAV协议是对Http1.1的扩展。

为了使Subversion与dav模块通信,需要安装mod_dav_svn插件,位于Subversion_HOME/bin目录下,将其拷贝到Apache_HOME/modules目录下,然后配置httpd.conf文件,让Apache在启动时加载上述模块。

4、可以将“Requirevalid-user”替换为“Require user svntest1 svntest2”形式,表示只有svntest1 和svntest2有权限访问该版本库。此时要注意授权策略文件中的配置要对应。

有时候不需要如此严格的访问控制,比如很多开源项目允许匿名读取操作,但只有认证用户才允许写操作,为了实现更为细粒度的权限认证,可以使用下面的标签:

<LimitExcept GET PROPFIND OPTIONSREPORT>

 require valid-user

</LimitExcept>

上述配置使用passwd文件将所有的版本库作为一个整体来限定访问权限,表示匿名用户有读取权限,而只有passwd中配置的用户可以进行写操作,若仍不能满足要求,可以使用Apache的mod_authz_svn模块对每个目录进行认证配置(即启用AuthzSVNAccessFile配置项)。

5、Subversion存在“认证”和“授权”两个核心概念。认证,即authentication,指用户名与密码认证。授权,即authorization,是指某用户对某个目录是否具备读、写权限的一种审核,两者配合使用,就构成了Subversion的整个账户管理体系。

 

常见的问题:

1、多库和单库的设置,使用SVNParentPath设置所有库的父目录时,浏览器无法直接访问父目录,经试验,除非权限策略文件中[\]为设置为* = r;SVNPath设置单库无此问题。

2、出现“<m:human-readableerrcode="720003">Could not open the requested SVNfilesystem</m:human-readable>”错误。

这表示指定的SVN仓库的位置并不是一个合法的SVN仓库,可以使用SVN客户端(例如TortoiseSVN)创建,也可以使用svnadmin create <reponame>命令创建,两者的效果一样的。


httpd-2.2.25-win32-x86-openssl-0.9.8y.msi httpd-2.2.25-win32-x86-openssl-0.9.8y.msi http apache服务器配置(域名+转发端口) 立即下载

相关推荐

tortoiseSVN,VisualSVN,setup-Subversion1.8.8,SVN下载

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS转移到Subversion。

window + svn + apache——全网第二好的配置方案

环境:windows server 2016 64核 visualSVN 与 svn+apache比较优劣 visualSVN相对svn+apache配置更简单,但是我们公司人员比较多,visualSVN免费版只能一个一个配置用户,如果要结合LDAP需要打钱,大概1000人使用需要4万左右。据说有破解版,但破解版支持人数有限,为了避免后面的麻烦,遂放弃visualSVN。svn+apache配置麻烦就麻烦点吧。visualSVN如果想要使用Active Directory,请移步地址https:/.

qq_41566366的博客 1951

openssl-win32工具 win32OpenSSL

用openSSL工具生成密钥使用说明: 安装后进入OpenSSL工具,输入如下命令: • Linux用户(以Ubuntu为例): $ openssl 进入OpenSSL程序 OpenSSL> genrsa -out rsa_private_key.pem 1024 生成私钥 OpenSSL> pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt Java开发者需要将私钥转换成PKCS8格式 OpenSSL> rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem 生成公钥 OpenSSL> exit 退出OpenSSL程序 • Windows用户在cmd窗口中进行以下操作: C:\Users\Hammer>cd C:\OpenSSL-Win32\bin 进入OpenSSL安装目录 C:\OpenSSL-Win32\bin>openssl.exe 进入OpenSSL程序 OpenSSL> genrsa -out rsa_private_key.pem 1024 生成私钥 OpenSSL> pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out rsa_private_key_pkcs8.pem (备注:Java开发者需要将私钥转换成PKCS8格式) OpenSSL> rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem 生成公钥 OpenSSL> exit 退出OpenSSL程序 ② 然后,开发者可以在当前文件夹中(OpenSSL运行文件夹),看到app_private_key.pem(开发者RSA私钥)、app_private_key_pkcs8.pem(pkcs8格式开发者RSA私钥)和app_public_key.pem(开发者RSA公钥)3个文件。开发者将私钥保留,将公钥配置到天机开放平台-配置账号,用于验证签名。 注意:对于使用Java的开发者,将pkcs8在console中输出的私钥去除头尾、换行和空格,作为开发者私钥,对于.NET和PHP的开发者来说,无需进行pkcs8命令行操作。

SVN 1.80 + Apache2.4.4 整合 完全攻略

阅读引导: apache 和 SVN 的整合配置可能会遇到一些问题,本篇提供了几个常见问题的解决方案,仅供参考, 附: the requested operation has failed 错误解决方案 附: Could not open the requested SVN filesystem 错误的解决方案 附 : authentication fai...

weixin_30414635的博客 212

华中科技大学计算机组成原理-单总线CPU设计(全部通关)

【计算机组成原理】 单总线CPU实验 华中科技大学-计算机组成原理 实验三 单总线CPU设计 第1关 MIPS指令译码器设计 第2关 单总线CPU微程序入口查找逻辑 第3关 单总线CPU微程序条件判别测试逻辑 第4关 单总线CPU微程序控制器设计 第5关 采用微程序的单总线CPU设计 第6关 现代时序硬布线控制器状态机设计 第7关 现代时序硬布线控制器设计

紫荆鱼的博客 4万+

Tesla V100 Windows 部署实战:从驱动安装到模式切换的避坑指南

本文是一份详细的Tesla V100在Windows系统下的部署实战指南。文章从硬件组装、系统选择讲起,重点阐述了驱动安装的正确方法,并深入剖析了将计算卡从TCC模式切换至WDDM模式的诱惑与潜在陷阱。最终,作者推荐保持默认TCC模式,并提供了使用nvidia-smi命令行等稳定可靠的显卡监控方案,旨在帮助用户避开常见坑点,高效利用这张专业计算卡进行AI计算等任务。

java5的博客 1706

用 Apache 和 Subversion 搭建安全的版本控制环境

 作者: 吴 玥颢 (wuyuehao@cn.ibm.com), 软件工程师, IBM胡 睿 (ruihu@cn.ibm.com), 软件工程师, IBM作为新一代的开源版本控制工具,Subversion 以其目录版本化、原子提交、版本化的元数据、更加有效的分支和标签等优良特性,正逐渐受到开源软件社区的重视,并有望取代 CVS,成为开源软件开发中版本控制的首选系统。在服务器端,Su

软体疯子专栏 1459

零基础搭建本地AI绘画环境:Stable Diffusion 3.5保姆级安装教程(含中文优化方案)

本文提供零基础搭建本地AI绘画环境的详细教程,重点介绍Stable Diffusion 3.5的安装与中文优化方案。从硬件配置检查到软件依赖安装,再到核心组件配置与中文语义增强,教程涵盖全流程操作指南,帮助用户快速掌握AI文生图模型的本地部署技巧,提升创作效率。

weixin_30752699的博客 312

Could not open the requested SVN filesystem问题的可能原因

具体错误如下: <D:error> <C:error/> <m:human-readable errcode="2"> Could not open the requested SVN filesystem </m:human-readable> </D:error> 1 2 3 4 5 ...

qq_34412985的博客 6795

MATLAB2022b安装

图文并茂,手把手教会你怎么安装MATLAB2022b

1万+

深入浅出块I/O子系统(四)请求处理过程

BIO请求处理的流程 函数scsi_request_fn()代码(摘自文件drivers/scsi/scsi_lib.c) (1)static void scsi_request_fn(struct request_queue *q) (2)int scsi_dispatch_cmd(struct scsi_cmnd *cmd) { host->hostt->queuecommand(host, cmd) } (3)struct sas_internal *i sas_queuec

sinat_37817094的博客 1347

windows下安装基于Apache的Subversion服务器

在Windows下安装最为方便的办法就是下载安装程序包,详细过程如下:1.安装程序与下载说明 Apache Web服务器 :http://httpd.apache.org/download.cgi        (Apache2.0.X版,我用的是2.0.59版;用2.2.X在windows下配置文件修改后无法启动!) Subversion :(http://subversion.tigris.o

Eleven's Blog 2932

北斗导航 | ILS(仪表着陆系统)、MLS(微波着陆系统)和GBAS(地基增强系统)的性能对比

最 早 的 GBAS 系 统 是 **局 域 增 强 系 统(LAAS)**,它是 1990 年由美国 Honeywell 公司 和 NASA 共 同 完 成 的 差 分 GPS(DGPS)演 变 而 来 的。1998 年,LAAS 被 ICAO 采 纳为 GBAS。2009 年 9 月 3 日 Honeywell 公 司 的GBAS 系统通过了 **CAT-I 精密进近着陆系统**的设计认证 ,而 **CAT-II 和 CAT-III 系统的研发和验证工作也正在有序的进行中**

尘世冰封的专栏 3985

Apache2.2.9+Subversion1.4.6在windows下的配置与权限设置

原文:http://www.subversion.org.cn/bbs/viewthread.php?tid=1704 1、配置 *安装Apache2.2.9的安装程序,端口默认为80,如果80被其它程序占用,则选择其它端口 * 安装Subversion1.4.6(for Apache2.2.X)的安装程序,特别需要注意的是版本的匹配即下载两个安装程序的时候,一定要注...

dfadd1334的博客 200

Python爬虫实战:利用Requests-HTML与异步技术高效爬取B站视频信息及弹幕数据分析

B站的弹幕,远非简单的评论功能,它是一种独特的、实时互动的社交方式,是观众情感的集体宣泄和共鸣。无论是用于内容创作者优化视频结构,还是用于社会学、传播学的研究,亦或是简单的个人兴趣分析,都具备极高的价值。stop_words = {'的', '了', '是', '我', '你', '他', '她', '它', '在', '有', '不', '吗', '吧', '啊', '这', '那'}本文不仅是代码的堆砌,更注重原理的剖析、反爬策略的应对以及工程化的思考,旨在为读者提供一份紧跟技术前沿的实战指南。

2201_76125261的博客 389

【LLM评估篇】Ceval | GAIA | MMLU benchmarks

- 一些大模型的评估模型: - 多轮:MTBench - 关注评估:agent bench - 长文本评估:longbench,longeval - 工具调用评估:toolbench - 安全评估:cvalue,safetyprompt等 本文还介绍了其他主流的大模型评估指标等及其使用

发现问题,并解决问题,批判性思维 6945

版本控制案例二之win下搭建httpd2.2+svn的版本控制服务器(svn使用win32svn安装包)

环境 win7 条件:Subversion+httpd.x httpd服务是Apache最基础的服务,通过他能实现http服务访问,https没研究过 下载apche2-httpd.x.x,具体版本不记得了 下载Subversion,自己百度下吧,推荐都是去官网下载 1 安装Apache,一路next 一直点击Next按钮即可,直到出现Server Information页面: 在三

rainyspring4540的专栏 1336

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

windows下安装基于Apache的Subversion服务器收藏

在Windows下安装最为方便的办法就是下载安装程序包,详细过程如下:1.安装程序与下载说明 Apache Web服务器 :http://httpd.apache.org/download.cgi        (Apache2.0.X版,我用的是2.0.59版;用2.2.X在windows下配置文件修改后无法启动!) Subversion :(http://subversion.tigris.o...

代码民工 185

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

使用Subversion构建版本控制环境(Windows)

使用Subversion构建版本控制环境(Windows)   摘要:     在 软件开发中,CVS在很长的一段时间内一直都是版本控制的首选。但是现在用户有了另一个或许是更好的选择SVN(subversion)。SVN是下一代 版本控制系统,完全可以替代CVS,CVS下的项目,也可以非常容易的转到SVN的控制之下(SVN项目主页是 http://subversion.tigri...

Only 231

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

在 Windows 上使用 Apache 2 配置 Subversion 服务器

1. 安装 Apache 如果还未安装 Apache,先安装。注意版本只能是 2.x 的,mod_dav_svn 模块不支持 2.2。 2. 安装 Subversion 从 http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91 下载文件名形如 svn-x.x.x-setup.exe 的程序,并安装。安

privatemain的专栏 1164

基于Apache的Subversion服务器安装(windows) SVN安装备忘

   <!--google_ad_client = "pub-4800128212142823";google_ad_width = 336;google_ad_height = 280;google_ad_format = "336x280_as";google_ad_type = "text_image";google_ad_channel = "";/

北方大冬瓜的博客 1889

如何在Windows上配置Subversion HTTP服务

由于不喜欢VSS的工作机制,我尝试在我的开发小组里推行Subversion做版本管理。网络上已经有很多的安装例子了。这里只是把我自己的经历记录下来。关于使用的心得,我会再之后在做增加。系统环境:WindowsXP 安装软件:apache_2.0.63、svn-1.4.6安装路径:Apache使用默认的安装路径:C:/Program Files/Apache Group/Apache2;Su

castellan的专栏 2931
上一篇: Alpha、Beta、RC、GA版本的区别
下一篇: window.close()在FF下无法关闭的问题解决
saygoodbyetoyou
博客等级 码龄17年 78粉丝 27原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值