今天终于在win2003 server下把svn和apache给配置好了。
关于配置我就不重述了,iusesvn上这个贴子讲的挺全。
说一下我在安装及配置时遇到的两个问题:
把mod_dav_svn.so和mod_authz_svn.so拷到apache的modules目录下后,apache无法启动。
生成passwd文件后,访问http://domain/svn,输入用户名和密码后提示:403 Forbidden。
第一个问题在纠结了半天后,发现是因为我的apache版本是2.2.17,而subvesion的版本是1.4,从网上下载个1.6.17的就没问题了。
第二个问题是因为我在apache里指定的SVNParentPath为D:SVN,而我直接在这个目录下创建的版本库。改为在这个目录下新建个目录(如project1)后,在D:SVNproject1下创建版本库就OK了。(域名访问是http://domain/svn/project1)
网上搜的配置贴里也有两个让人纠结的地方:
- svn应该下哪一个?
svn中文站上面现在的链接仍然是http://subversion.tigris.org,而这个项目早就转到了apache下了。点击subversion apache进去后点击windows,会有五个版本:CollabNet,SlikSVN,VisualSVN Server,WANdisco,Win32Svn。从而不知道选哪一个。我在二进制的博客里找到了它们的解释:
CollabNet是svn的创始者,功能多,但软件包太大,占资源;SlikSVN和Win32Svn都只有svn的内核,后者是以前官网上的svn,提供apache的库文件;VisualSVN Server是图形界面的,最傻瓜的一种。(我这次主要研究配置,用的win32Svn)
- passwd的创建
上面给出的文档里没详细说明,这里说一下:
在命令提示符下进入apache下的bin目录,
输入htpasswd.exe -c passwd 用户名 (删除用户的命令是htpasswd.exe -D passwd 用户名)
按回车,提示两次输入密码,结束后会在当前目录下创建一个passwd的文件,把它拷到AuthUserFile指定的路径。