当前位置: 代码迷 >> CVS/SVN >> Windows XP上APACHE+SVN的安装
  详细解决方案

Windows XP上APACHE+SVN的安装

热度:8438   发布时间:2013-02-26 00:00:00.0
Windows XP下APACHE+SVN的安装

一、软件准备

Setup-Subversion-1.6.6.msi

下载地址:

http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=11151&expandFolder=11151&folderID=11149

httpd-2.2.17-win32-x86-no_ssl.msi

下载地址:

http://www.meisei-u.ac.jp/mirror/apache/httpd/binaries/win32/

TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi

下载地址:

http://sourceforge.net/projects/tortoisesvn/files/Application/

注意:上述SubversionApache版本要匹配,具体可以在下载Setup-Subversion-1.6.6.msi时能够看到。

二、具体安装

1、安装Apache

一直点击Next按钮即可,直到出现Server Information页面:

在三个文本框中分别填写

Network Domainlocalhost

Server Namelocalhost
Administrator’s Email Address
web@163.com

?

其中Email随便填写就可以了,然后一路Next,直到安装成功为止。

?

2、测试Apache

IE里输入http://localhost/,如果页面显示:It Works!,恭喜你安装Apache成功

?

3、安装Subversion

非常简单一路Next,直到安装成功为止

?

4、测试Subversion是否安装成功

进入cmd 执行svn,,出现如下提示代表安装成功

C:\Documents and Settings\Administrator>svn

使用“svn help”得到用法。

?

5Subversion数据仓库建立及相关配置

建立数据仓库:

C:\Documents and Settings\Administrator>svnadmin create e:\svnroot\project_name

执行上述命令后如果没有输出,代表创建数据仓库成功,进行e:\svnroot\project_name下会看到如下目录和文件:

conf

dav

db

format

hooks

locks

README.txt

我们重点关注conf目录,进入conf目录,会看到有如下文件:

svnserve.conf:基础配置文件

authz:配置用户权限文件

passwd:配置用户名和密码文件

?

svnserve.conf文件变更如下:

找到#password-db = passwd,去掉#

找到#anon-access = read???? 去掉#,改readnone

找到#auth-access = write ????去掉#

找到#authz-db = authz?????? 去掉#

?

passwd:变更如下:

在文件的最后加入:

hello_one = 123456

hello_two = 123456

上述含义为增加两个用户hello_onehello_two密码均为123456

?

authz:变更如下:

增加组

[groups]

dept_manager = hello_one

dept_member = hello_two

根据组配置权限控制

[project_name:/]

@dept_manager = rw

* = r

?

[project_name:/src]

@dept_manager = rw

@dept_member = rw

?

6Apache配置

进入目录C:\Program Files\Subversion\bin>

找到如下两个文件:mod_authz_svn.somod_dav_svn.so

将其拷贝至C:\Program Files\Apache Software Foundation\Apache2.2\modules目录下

进入目录C:\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,去掉#

增加[我是加在LoadMoudle最后]

LoadModule dav_svn_module modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

?

httpd.conf末尾加上:

<Location /svn/project_name>

DAV svn

SVNPath e:/svnroot/project_name

?

AuthzSVNAccessFile e:/svnroot/project_name/conf/authz

Satisfy Any

Require valid-user

?

AuthType Basic

AuthName "Subversion repositories"

AuthUserFile? e:/svnroot/project_name/conf/users.auth

Require valid-user

</Location>

?

6users.auth生成

C:\Program Files\ Apache Software Foundation\Apache2.2\bin>htpasswd -cb users.auth

hello_one 123456

Automatically using MD5 format.

Adding password for user hello_one

C:\Program Files\ Apache Software Foundation\Apache2.2\bin>

我们就会发现在bin目录生成了users.auth,我们可以看到, hello_one用户名已经被添加进去了

,密码是用MD5加密过的.然后我们还要增加用户呢,可以用如下方法:

C:\Program Files\ Apache Software Foundation\Apache2.2\bin>htpasswd -b users.auth

hello_two 123456

Automatically using MD5 format.

Adding password for user hello_two

C:\Program Files\ Apache Software Foundation\Apache2.2\bin>

注意加入第二个用户的命令参数少了c,第一次新建的时候要加,后面追加用户的时候,就不用这个c.然后打开users.auth,会发现两个用户都已经在里面了,这个时候,我们把users.auth移到e:/svnroot/project_name/conf/里面去,

使我们上面的设置生效.

7、测试

重新启动Apache,发现有如下错误:

Syntax error on line 174 of C:/Program Files/Apache Group/Apache2/conf/httpd.con

f:

API module structure 'dav_svn_module' in file C:/Program Files/Apache Group/Apac

he2/modules/mod_dav_svn.so is garbled - expected signature 41503230 but saw 4150

3232 - perhaps this is not an Apache module DSO, or was compiled for a different

?Apache version?

Note the errors or messages above, and press the <ESC> key to exit.? 14...

解决办法:C:\Program Files\ Apache Software Foundation\Apache2.2\bin>目录下的所有dll文件拷贝到一个临时目录,然后删除他,从C:\Program Files\Subversion\bin>目录拷贝所有的dll文件至C:\Program Files\ Apache Software Foundation\Apache2.2\bin>目录下,再将临时目录的文件覆盖至C:\Program Files\ Apache Software Foundation\Apache2.2\bin>目录下。

重新启动Apache,成功。

IE中输入:http://localhost/svn/prject_name 页面出现如下内容:

project_name - Revision 0: /

代表您已经安装成功

?

  相关解决方案