Windows下配置基于Apache的SVN
1、从http://httpd.apache.org/download.cgi 网站,下载Apache服务器的最新版本apache_2.0.63-win32-x86-no_ssl.msi 。
2、从http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91 网站下载Subversion的
最新版本svn-1.4.3-setup.exe 。
3、下载中文版的TortoiseSVN中的1.4.2版本。
安装
4、安装Apache,可以参考相关文档
5、安装Subversion
配置
6、拷贝%SUBVERSION_HOME%/bin/mod_dav_svn.so、%SUBVERSION_HOME%/bin/mod_authz_svn.so、
%SUBVERSION_HOME%/bin/libdb44.dll到%APACHE_HOME%/module
7、编辑%APACHE_HOME%/conf/httpd.conf,找到
#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_module modules/mod_dav.so
去掉注释(删除#)
在LoadModule后增加
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
8、在%APACHE_HOME%/conf/httpd.conf配置文件的最后增加
<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath D:\SVN #注意这里为库的父级目录,不能为DocumentRoot目录一致或其子目录
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile passwd #passwd文件,建议放在SVN库的conf下
#AuthzSVNAccessFile svnaccessfile #访问控制文件,建议为conf下的authz文件
Require valid-user
</Location>
9、%APACHE_HOME%> bin\htpasswd -c %passwd_home%\passwd <username>
bin\htpasswd -m passwd <username> (passwd文件存在,添加用户)
10、设置Apache的httpd.conf
设置
|解释
<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath D:\SVN
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile passwd
AuthzSVNAccessFile
Require valid-user 意思是Subversion版本库的URL是http://MyServer/svn/
告诉Apache是哪个模块响应那个URL的请求-此刻是Subversion模块。
对于Subversion1.3或者更高版本,这个指示表示显示所有SVNParentPath下的版本库。
告诉Subversion需要查看的版本库位于D:\SVN之下
激活基本认证,就是用户名/密码
用来说明何时弹出要求用户输入认证信息的认证对话框
指定使用的认证密码文件
位置Subversion版本库的访问控制文件的路径
指定只有输入了正确的用户/密码的用户可以访问URL
11、如果你希望所有人可以读你的版本库,但是只有特定用户可以写,你可以修改下面几行
Require valid-user
to
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
12、使用passwd可以整体的控制对版本库的访问,但是如果你希望精确的控制版本库目录访问,你可以修改需要下面几行
#AuthzSVNAccessFile svnaccessfile
页:
[1]