主要参考http://wenku.baidu.com/view/ebab669951e79b89680226db.html
在添加httpd.conf中的<Location> 时略有却别,用原作者的内容,不知道什么原因,我没有成功
我就修改了一点地方,区别在下面标红了
1. 软件下载
1.1.Apache HTTP server下载 1.2. Apache Subversion下载 1.3.TortoiseSVN下载 1.4.备注注意:apache与svn安装时,要注意是否兼容,需要看版本匹配情况。
2. 安装Apache2.1.安装步骤1)可以自定义安装目录,如:D:\Program Files\Apache2.2。
2)修改Apache端口,在D:\Program Files\Apache2.2\conf下,将httpd.conf文件Listen 80 更改为Listen 8000。保存,然后重启Apache。(开始 -> 所有程序 -> Apache HTTP Server 2.2 ->Control Apache Server -> Restart)
3)检查apache是否安装成,访问http://localhost:8000,如果显示“It works!”(如下图所示)则表明安装成功。
2.2.备注
默认情况下apache是80端口,但是80端口经常会让其它服务占用。建议最好更改访问端口。
3. 安装Subversion服务端按照提示安装:可以自定义安装目录,如:D:\Program Files\Subversion下。
4. 安装SVN客户端及汉化包
按照提示安装即可,如我安装在D:\Program Files\TortoiseSVN。先安装软件,然后安装汉化包。
5. 将SVN与Apache集成
1)将D:\Program Files\Subversion\bin目录中mod_dav_svn.so和mod_authz_svn.so文件复制到D:\Program Files\Apache2.2\modules目录下。
2)配置apache环境下的httpd.conf文件:
去掉前面的#号:
#LoadModuledav_module modules/mod_dav.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
将下面几行添加到LoadModule部分的最后:
LoadModuledav_svn_module modules/mod_dav_svn.so
LoadModuleauthz_svn_module modules/mod_authz_svn.so
保存该文件。
3)重启Apache,可以看到Apache Service Monitor左下角的状态栏出现了SVN、DAV版本信息,如下图所示:
6. 配置Apache和SVN
1)将SVN的bin目录地址(D:\ProgramFiles\Subversion\bin)添加到系统变量path中。
2)新建文件夹F:\svn作为需要同步的文件夹。
3)配置Apache:将下列内容加入httpd.conf文件。
# 指明SVN版本库的URL是http://{ServerIP}/svn/
<Location F:/svn>
#引用远程访问模块
DAV svn
#版本库路径
#SVNListParent Pathon
SVNParentPath F:/svn #代替 SVNPath F:/svn/kettle-4.0-src
Satisfy Any
#激活基本认证(用户名/密码)
AuthType Basic
#说明何时弹出要求用户输入认证信息的对话框
AuthName"Subversion repositories"
#指定使用的认证密码文件
AuthUserFile F:/svn/passwd.ini
#SVN版本库访问控制文件的路径
AuthzSVNAccessFile F:/svn/authz.ini
#设置为只有输入了正确的用户/密码才可访问URL
Require valid-user
</Location>
4)更为详细的解释:
设 置
解 释
<Location /svn>
指明Subversion版本库的URL为:
http://{ServerIP}/svn/
DAV svn
告诉Apache是哪个模块响应URL的请求
此刻是Subversion模块
SVNListParentPath on
显示所有SVNParentPath下的版本库
SVNParentPath F:\svn
告诉 Subversion需要查看的版本库位置
SVNIndexXSLT “/svnindex.xsl”
使用它可以在用浏览器浏览时更好看
AuthType Basic
激活基本认证(用户名/密码)
AuthName “Subversion repositories”
说明何时弹出要求用户输入认证信息对话框
AuthUserFile F:/svn/passwd.ini
指定使用的认证密码文件
AuthzSVNAccessFile F:/svn/authz.ini
Subversion版本库的访问控制文件的路径
Require valid-user
标明只有输入正确用户/密码才可以访问URL
7. 创建SVN用户认证文件1)开始 -> 运行,输入cmd,然后到D:\Program Files\Apache2.2\bin目录下:
2)创建第1个用户时,输入:htpasswd -c F:\svn\passwd.ini liaojia。其中 passwd.ini为存放用户名及密码的文件名,liaojia为用户名。然后输入两遍密码以后文件创建成功,文件中包含liaojia的登录信息(用户名、密码)。
3)第2个用户创建时用:htpasswd F:\svn\passwd.ini zhaoruixue,然后输入密码。
4)可以找到具体的目录查看,验证是否创建成功。可以发现,第2次加入用户以后用户信息文件多了zhaoruixue的信息,而且两次密码内容都进过MD5算法计算。该文件用户SVN访问控制。
8. SVN版本库及登录访问权限设置1)在F:\svn\目录下,新建子文件夹kettle-4.0-src(用于存储kettle项目代码)。
2)鼠标右键点击文件夹,通过SVN客户端在此创建版本库,如下图所示:
得到如下效果图,则表明创建成功:
3)创建访问权限设置文件:可命名为authz.ini
编辑authz.ini的内容:
#分组
[groups]
#权限设置
[/]
*=r
liaojia=rw
zhaoruixue=rw
[kettle-4.0-src:/]
*=r
liaojia=rw
zhaoruixue=rw
9. 使用说明1) 可以在F:\svn\kettle-4.0-src文件夹中放入数据,然后右键单击文件夹:
选择TortoiseSVN-> 导入,如下图所示
然后产生了第一个内容版本。
2)可通过地址http://{ServerIP:8000}/svn 访问资源库。
“8000”为配置的SVN监听端口
“/svn”为配置的相对地址,这里对应F:\svn\kettle-4.0-src目录