原文:http://www.subversion.org.cn/bbs/viewthread.php?tid=1704
1、配置
* 安装Apache2.2.9的安装程序,端口默认为80,如果80被其它程序占用,则选择其它端口
* 安装Subversion1.4.6(for Apache2.2.X)的安装程序,特别需要注意的是版本的匹配即下载两个安装程序的时候,一定要注意Subversion与Apache版本的匹配
* 拷贝Subversion安装目录下bin目录中的mod_authz_svn.so和mod_dav_svn.so
将两个文件粘贴到Apache安装目录下的modules目录中
* 进入Apache安装目录下的conf目录中,用UltraEdit或EditPlus打开httpd.conf文件找到第83、84行(Apache版本不同,这两行内容的位置不同,要以内容为准)
83 #LoadModule dav_module modules/mod_dav.so
84 #LoadModule dav_fs_module modules/mod_dav_fs.so
将这两行前面的#号去掉(#号表示注释掉当前行的信息),修改后为:
83 LoadModule dav_module modules/mod_dav.so
84 LoadModule dav_fs_module modules/mod_dav_fs.so
再到LoadModule信息结束的位置,也就是127行(同样Apache版本不同,行数不同)加入以下两行信息:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
* 完成以上步骤也就完成了Apache2.2.9+Subversion1.4.6的基本配置
现在关闭Apache服务器,再重启,会发现Apache控制台的状态栏出现Subversion的信息
如:Apache/2.2.9(Win32) SVN/1.4.6 DAV/2
这就说明已经成功的将Subversion集成到了Apache当中
2、建立版本库(本文以在D:\盘下操作为例)
* 在Windows开始菜单的运行中执行cmd打开命令窗口,然后转到D:\根目录
* 在D:\根目录下执行D:\mkdir svnroot建立子目录svnroot,再转入svnroot目录下
* 在D:\svnroot目录下首先执行D:\svnroot\mkdir svn1建立子目录svn1,在进入svn1中,在建立三个子文件夹aaa,bbb和ccc,建好的目录结构如下:
C:\svnroot\svn1\aaa
\bbb
\ccc
* 然后执行svnserve create D:\svnroot\svn1建立仓库svn1
3、配置单仓库的用户权限
* 再次打开Apache安装目录下conf目录中的httpd.conf文件,将光标移到问文件的最末端加入如下代码:
<Location /svn>
#这里指定了仓库的访问路径,即http://localhost/svn
DAV svn
#指定仓库在硬盘上的实际位置
SVNPath D:/svnroot/svn1
#认真方式为基本方式
AuthType Basic
#认证窗口的标题
AuthName "Subversion Repository"
#认证用户配置文件实际位置
AuthUserFile "D:/svnroot/passwords.auth"
#认证权限配置文件实际位置
AuthzSVNAccessFile "D:/svnroot/access.auth"
#设定为需要进行认证
Require valid-user
</Location>
* 接下来我们创建认证所需的两个文件:用户文件和权限文件
到D:\svnroot下建立文件passwords.auth和access.auth(可以用记事本创建后修改文件名)
* 配置认证用户文件passwords.auth,内容如下:
tom:tom
cat:cat
hello:world
在这里密码都没有加密,如果需要设置密码加密,可以用Apache安装目录下bin目录中的htpasswd.exe程序生成,具体生成方法如下:
首先要将这个目录配置到环境变量的path中,我的路径是
C:\Program Files\Apache Software Foundation\Apache2.2\bin
然后打开命令窗口,在命令行中使用如下命令
C:\htpasswd -c D:\svnroot\passwords.auth tom
回车后会提示输入密码,输入tom,再回车会提示输入确认密码,再次输入tom就可以了
命令行中的参数-c表示创建一个文件,第一次运行创建好了,再添加别的用户的时候就
不要再使用这个参数了,如我再添加cat和hello用户
C:\htpasswd D:\svnroot\passwords.auth cat
C:\htpasswd D:\svnroot\passwords.auth hello
这样建立的用户密码默认使用的MD5加密,你打开文件以后看到的可能就是如下格式:
tom:7Z/80Al6$WTqVrBgshc/Bxi6YYkUga1$apr1$
cat:kNrG459T$qfAZ7MpgpFcdd2xp25gST1$apr1$
到此我们就添加好了三个用户tom,cat和hello,他们的密码分别为tom,cat,world
* 配置认证权限文件access.auth
直接在D:\svnroot下建立access.auth文件即可,然后填入如下内容
[groups]
dev1 = tom,cat #开发用户组1
dev2 = hello #开发用户组2
[/]
* = r #设定所有用户对根目录有读权限,即浏览权限
[/aaa]
@dev1 = rw #设定dev1组成员对aaa目录有读和写权限
@dev2 = #设定dev2组成员对aaa目录没有任何权限
[/bbb]
@dev1 = #设定dev1组成员对bbb目录没有任何权限
@dev2 = rw #设定dev2组成员对bbb目录有读和写权限
[/ccc]
@dev1 = #设定dev1组成员对ccc目录没有任何权限
@dev2= #设定dev2组成员对ccc目录没有任何权限
到此我们为不同用户分组定义了权限,大家可以使用不同的用户
进行browse/import/checkout试验
访问路径为http://localhost/svn
4、配置多仓库的用户权限
* 首先在建立一个仓库svn2
* 在D:\svnroot目录下首先执行D:\svnroot\mkdir svn2建立子目录svn2
* 然后执行svnserve create D:\svnroot\svn2建立仓库svn2
修改打开Apache安装目录下conf目录中的httpd.conf文件,将光标移到问文件的最末端
加入的代码修改如下:
<Location /svn>
DAV svn
#这里将SVNPath修改为SVNParentPath,当前目录为父目录
#仓库svn1和svn2在这个父目录下
SVNParentPath D:/svnroot
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile "D:/svnroot/passwords.auth"
AuthzSVNAccessFile "D:/svnroot/access.auth"
Require valid-user
</Location>
* 认证用户文件passwords.auth不需要做任何修改
* 认证权限文件access.auth修改如下:
[groups]
dev1 = tom,cat #开发用户组1
dev2 = hello #开发用户组2
[svn1:/]
* = r
[svn1:/aaa]
@dev1 = rw #设定dev1组成员对svn1仓库下的aaa目录有读和写权限
@dev2 = #设定dev2组成员对svn1仓库下的aaa目录没有任何权限
[svn1:/bbb]
@dev1 = #设定dev1组成员对svn1仓库下的bbb目录没有任何权限
@dev2 = rw #设定dev2组成员对svn1仓库下的bbb目录有读和写权限
[svn1:/ccc]
@dev1 = #设定dev1组成员对svn1仓库下的ccc目录没有任何权限
@dev2= #设定dev2组成员对svn1仓库下的ccc目录没有任何权限
[svn2:/]
@dev1 = #设定dev1组成员对svn2仓库没有任何权限
@dev2= #设定dev2组成员对svn2仓库没有任何权限
到此我们为不同用户分组对不同仓库定义了权限,大家可以使用不同的用户
进行browse/import/checkout试验
仓库1访问路径为http://localhost/svn/svn1
仓库2访问路径为http://localhost/svn/svn2
对父目录http://localhost/svn/,任何用户都没有任何访问权限
5、总结
经过以上几个部分的介绍,初步实现了Apache2.2.9+Subversion1.4.6(for Apache2.2.X)在windows下的配置与权限设置,并且根据单仓库和多仓库的不同情况,进行了分别的分析与配置,基本可以满足日常开发的需要,在实际的开发中,可以根据实际人员和项目的权限安排,进行相应的配置。
分享到:
相关推荐
APACHE 2.2.9+TOMCAT6.0.18配置 APACHE 2.2.9+TOMCAT6.0.18配置
2.基本组件:Apache2.2.9+PHP5.2.6+MySQL5.1.29+Serv-U6.4.0.6 3.所有组件均采用“官方原版”常规安装,有特殊要求可自己修改。 4.多个组件自由选择,可选择安装全部组件,也可以只装部分组件。 5.其中Apache Http...
### APACHE 2.2.9+TOMCAT6.0.18 配置负载均衡 #### 目标 本教程旨在通过使用 Apache 2.2.9 和 Tomcat 6.0.18 来搭建一个可以实际部署运行的 Web 网站。具体目标包括: 1. **实现 Apache 作为 HTTP 服务器**:...
这个Apache v2.2.9 Windows版源码包是为开发者和学习者提供的一个宝贵资源,它包含了Apache服务器在Windows平台上的源代码,允许用户进行深入研究、定制以及编译。 Apache服务器的核心功能包括但不限于: 1. **...
在本教程中,我们将深入探讨如何使用JK插件配置Tomcat 5.5.26与Apache 2.2.9进行集成。JK插件,全称“mod_jk”,是Apache HTTP服务器的一个模块,用于将HTTP请求转发到Tomcat应用服务器,实现两者之间的负载均衡和高...
这可能包含了安装程序、配置文件、文档和其他相关资源,以便在Windows环境下部署和运行Apache服务。 【标签】虽然没有提供具体的标签,但我们可以推测这个压缩包可能与以下关键词相关:Apache、HTTP服务器、Windows...
Apache 2.2.9 Win32版源码包,Apache是一款著名的HTTP服务器,完美支持JAVA、JSP等WEB服务,可运行于Windows平台或Linux,这是运行于Windows平台的apache源码包,希望对喜欢C编程的朋友有些帮助。
《Apache HTTP服务器2.2.9在CentOS 6.8环境下的安装与使用详解》 Apache HTTP服务器,简称Apache,是世界上最流行的Web服务器软件之一,以其开源、免费和高度可定制性而受到广大用户的喜爱。本文将详细介绍如何在...
在压缩包子文件的文件名称列表中,“apache_2.2.9-win32-x86-no_ssl-r2.msi”是一个Microsoft Installer(MSI)文件,它是Windows平台上的安装程序包。用户可以通过双击这个MSI文件来启动Apache服务器的安装向导,该...
2. 安装Apache:下载最新稳定版的Apache(例如apache_2.2.9-win32-x86-no_ssl-r2.msi),双击运行安装向导,按照提示进行下一步。 3. 设置安装选项:在“Network Domain”中输入你的域名,"Server Name"输入服务器...
在安装 Apache 之前,请确保你的计算机运行的是 Windows 2000、Windows XP SP1 或 Windows 2003。你需要从 Apache 官方网站下载 2.2.9 版本的 Apache Web 服务器。安装过程中,确保你正确地配置了服务器 URL(如果...
【Windows下SVN服务器配置详解】 Subversion (简称SVN) 是一款强大的版本控制系统,它在Windows环境下同样可以被高效地配置和使用。本指南将详细介绍如何在Windows上搭建SVN服务器,包括Apache HTTP Server的安装、...
本篇文章详细介绍了在 Linux 操作系统下安装和配置 Apache2.2.x、MySql5.x 和 PHP5.x 的步骤,使用的操作系统为 Redhat AS5,内核版本为 Linux 2.6.18-8.el5,但其他 Linux 版本也可以参考。 知识点一:下载所需...
以下是Apache + Subversion在Linux上的详细安装和配置步骤: 1. **准备安装包**: 在开始安装前,确保下载以下必要的包: - APR (Apache Portable Runtime):apr-1.3.6.tar.gz - APR-Util:apr-util-1.3.8.tar....
#### 二、Apache 2.2 的安装与配置 1. **下载安装Apache**: - 访问官方网站下载Apache 2.2.9的源码包。 - 使用命令行工具解压并编译安装。 ```bash root# wget ...
在`/usr/local/apache2.2.9/conf/httpd.conf`中,确保加载了相关的模块,并配置SVN路径: ``` LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so ``` ...
如果运行复杂的Perl、CGI程序,请下载ActivePerl,安装在APMServ所在分区根目录下的usr目录中。假如APMServ所在目录为E:\APMServ5.2.6,则将ActivePerl的安装路径选为E:\usr ActivePerl 5.8.8.819 for Windows ...