Subversion1.6.6 + apache2.2.14 + windows2003安装配置
1、下载Apache2.2.14并安装,略。设安装目录为:D:\Program Files\Apache Software Foundation\Apache2.2
2、下载Subversion1.6.6并安装,略。设安装目录为:D:\install\svn-win32-1.6.6
3、假设已安装完成上述软件,整合配置步骤如下:
* 复制D:\install\svn-win32-1.6.6\bin目录下的 mod_dav_svn.so,mod_authz_svn.so及所有dll文件(共17个文件)到D:\Program Files\Apache Software Foundation\Apache2.2\modules目录下。
* D:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf配置文件,找到#LoadModule dav_module modules/mod_dav.so和#LoadModule dav_fs_module modules/mod_dav_fs.so,取消前面的2个“#”。并在LoadModule dav_fs_module modules/mod_dav_fs.so的下一行增加:LoadModule dav_svn_module modules/mod_dav_svn.so和
LoadModule authz_svn_module modules/mod_authz_svn.so,一个语句一行,最后的形式为:
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
使用Apache自带的htpasswd工具,生成密码文件(需要建立D:\Program Files\Apache Software Foundation\Apache2.2\conf-svn目录)。命令如下:
D:\Program Files\Apache Software Foundation\Apache2.2\bin>htpasswd -cmb ../conf_svn/passwd test test
打开配置文件D:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf,在文件最后增加:
#资源库的根位置,多库模式。实际的资源库路径为:D:\svnserver\repository
<Location /svn>
DAV svn
SVNParentPath D:\svnrepos #AuthzSVNAccessFile svnaccessfile
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile "D:\Program Files\Apache Software Foundation\Apache2.2\conf_svn\passwd"
Require valid-user
</Location>
#单库模式配置方法,根据实际需要选择一种配置方法就行。
<Location /svn>
DAV svn
SVNPath "D:\svnserver\repository" #AuthzSVNAccessFile svnaccessfile
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile "D:\Program Files\Apache Software Foundation\Apache2.2\conf_svn\passwd"
Require valid-user
</Location>
* 保存httpd.conf文件,重启Apache,就能访问了。注:多库模式下的访问地址:http://localhost/svn/test;单库模式的访问地址:http://localhost/svn,第一次访问时提示输入用户名密码。使用htpasswd命令中设置的用户名密码访问。
表 3.1. 设置 Apache 的 httpd.conf
设置 | 解释 |
---|---|
<Location /svn> | 意思是Subversion版本库的URL是http://MyServer/svn/ |
DAV svn | 告诉Apache是哪个模块响应那个URL的请求-此刻是Subversion模块。 |
SVNListParentPath on | 对于 Subversion 1.3 或者更高版本,这个指示会列出所有 SVNParentPath 中的版本库。 |
SVNParentPath D:\SVN | 告诉Subversion需要查看的版本库位于D:\SVN 之下 |
SVNIndexXSLT "/svnindex.xsl" | 使用它可以在用浏览器浏览时更好看。 |
AuthType Basic | 激活基本认证,就是用户名/密码 |
AuthName "Subversion repositories" | 用来说明何时弹出要求用户输入认证信息的认证对话框 |
AuthUserFile passwd | 指定使用的认证密码文件 |
AuthzSVNAccessFile | 位置Subversion版本库的访问控制文件的路径 |
Require valid-user | 指定只有输入了正确的用户/密码的用户可以访问URL |
----------------------------------
安装了Apache服务器,可以启动不起来。(1. domain problem 2.The requested operation has failed!)
%APACHE_HOME%\bin>httpd.exe -w -n "Apache2.2" -k start 如果有错误会把错误显示出来,当然也可以看log信息。
解决方法是:
修改httpd.conf文件,将serverName=your domain:80 改为serverName=your Ip:80 (因为我机子没有DNS服务)
再修改计算机的网络设置,将 网上邻居->Tcp/IP 属性->高级->LMHOSTS前的勾去掉。
OK,现在就可以启动Apache服务了。