Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4626865
  • 博文数量: 671
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 7310
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-14 09:56
文章分类

全部博文(671)

文章存档

2011年(1)

2010年(2)

2009年(24)

2008年(271)

2007年(319)

2006年(54)

我的朋友

分类:

2007-08-29 13:01:23

 
      SVN是一个非常优秀的版本控制工具,Apache Http Server 是最先进的Http服务器。Apache早已经推出2.2系列了,但是Subversion并不能很好的支持在Apache 2.2系列中配置。不过最新的SVN 1.4系列已经能够支持在Apache 2.2中配置了,下边简单的说说在Windows系统中如何在Apache 2.2系列中配置 SVN吧!注意:SVN采用 1.4.4版本,Apache采用2.2.4版本(其它版本应该大同小异)。

      1、下载Apache和Subversion。SVN:去Subversion的 下载Windows下的 Apache 2.2版本的文件,对应的地址为Win32 packages built against Apache 2.2 (不保证一直能用,最好自己去Subversion主页去找)。Apache Http Server: 下边能找到Apache 2.2.4版本的下载地址,目前为: 。


      2、安装Apache 2.2.4,比较简单按照提示安装即可,友情提示:最好不要选择默认的安装目录,装载根目录下用起来最方便,比如安装在 C:\Apache Software Foundation\Apache2.2 目录下。


      3、解压下载的 svn-win32-1.4.4.zip 至某一目录,比如解压至目录:C:\Subversion Server。


      4、修改Apache的配置文件 httpd.conf 如下:
      在LoadModule cgi_module modules/mod_cgi.so这一行(大概是第83行)后边增加如下内容
      # For SVN
      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

      或者在模块加载列表找到以下语句:#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_modulemodules/mod_authz_svn.so


      5、拷贝解压後的SVN目录下bin文件夹(对应本例即为 C:\Subversion Server\bin)下的mod_authz_svn.so和mod_dav_svn.so这两个文件,到Apache安装目录下的modules文件(本例即为目录 C:\Apache Software Foundation\Apache2.2\modules)下。
      解压後的SVN目录下bin文件夹(对应本例即为 C:\Subversion Server\bin)下的libdb44.dll、libeay32.dll、ssleay32.dll到Apache安装目录下的bin文件夹(即目录(本例即为目录 C:\Apache Software Foundation\Apache2.2\bin)下。


      6、设置环境变量,必不可少的一步:APR_ICONV_PATH=SVN解压目录\iconv,并增加Path变量SVN解压目录\bin,对应本例,设置如下:(环境变量的设置方法略)
      APR_ICONV_PATH=C:\Subversion Server\iconv
      在Path变量中增加C:\Subversion Server\bin


      7、创建了版本库以后,修改Apache配置文件httpd.conf,根据需要创建服务器。
      不带有任何权限控制的SVN服务器:
     
在文件最后追加如下内容:
#SVN

DAV svn
SVNListParentPath on #使用SVN版本库列表功能
SVNParentPath D:\SVN #SVN版本库根目录


      较完备的SVN服务器:(在httpd.conf后追加如下内容)
#SVN

    DAV svn
    SVNListParentPath on
    SVNParentPath D:\SVN #SVN版本库根目录
   
    #认证的类型
    AuthType Basic

    #认证的名称,显示于登录提示框
    AuthName "Subversion repositories!Login needed!"
   
    #Which password file to use for authentication 存储用户登录信息的文件
    AuthUserFile D:\SVN\passwd

    #Location of the Access file for paths inside a Subversion repository!存储SVN服务器的访问控制策略
    AuthzSVNAccessFile D:\SVN\svnaccessfile.txt

    #For any operations other than these, require an authenticated user.匿名用户只有读权限 登录用户有写权限
    #在使用AcessFile时如允许匿名访问仍需这样写
   
        Require valid-user #Only valid users are allowed to access the URL
   


      重启Apche服务器即可,在浏览器输入: 验证配置。
      注意:这样的配置目前还不能用Apache Monitor去启动服务,必须去命令行只Apache安装目录,输入httpd命令才能正常启动~

      SVN的使用可以参看我的另外一篇文章:SVN 使用心得 !期待支持Apache 2.2.4 的Exe版本的SVN的发布。
     

       另外,给大家推荐一个很好的学习和使用SVN的网站:。是我目前见到的国内的学习SVN最好的网站,相信使用SVN碰到的大部分问题在其中都可以找到合适的解决方法的。尤其推荐: ,里边有非常详细的SVN的安装配置以及使用说明。

阅读(1254) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~