??xml version="1.0" encoding="utf-8" standalone="yes"?>av成人 com a,国产精品二区在线,91精品国产91久久综合桃花http://www.aygfsteel.com/xiaosao/category/24835.html不懂我的?, M?jin)?, 该了(jin)解了(jin)解我 !而懂我的?, 更离不了(jin)?, 因ؓ(f)他们爱我 ?/description>zh-cnThu, 18 Oct 2007 07:10:16 GMTThu, 18 Oct 2007 07:10:16 GMT60<?gt;实战SVN For Apache2Q二Q?/title><link>http://www.aygfsteel.com/xiaosao/archive/2007/10/17/153667.html</link><dc:creator>cAng^Er</dc:creator><author>cAng^Er</author><pubDate>Wed, 17 Oct 2007 11:47:00 GMT</pubDate><guid>http://www.aygfsteel.com/xiaosao/archive/2007/10/17/153667.html</guid><wfw:comment>http://www.aygfsteel.com/xiaosao/comments/153667.html</wfw:comment><comments>http://www.aygfsteel.com/xiaosao/archive/2007/10/17/153667.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/xiaosao/comments/commentRss/153667.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/xiaosao/services/trackbacks/153667.html</trackback:ping><description><![CDATA[原文地址Qhttp://www.cnblogs.com/archive/2005/10/29/264659.html<br /> 在上一文章中Q我们已l实C(jin)对SVN和Apache的安装,q将它们集成在一起工作。这一则主要介绍如何对SVN For Apacheq行一些配|? <ol> <li>   在Apache下ؓ(f)SVN建立多个库。上中虽然也徏立了(jin)一个SVN的库在Apache下,但是我们不可能一个SVN服务器上只有一个项目,或者所有项目共用一个SVN库进行开发,在Apache上ؓ(f)SVN建立多个库可以通过建立多个虚拟目录的方式实现。下面我们就来讲讲具体的步骤Q注意,此篇中的配置和上中的配|方式有很大区别Q?br /> <br /> <ol> <li>到F盘徏立我们的SVN代码存放位置目录QSubversionFilesQƈ在其中徏立一个conf目录Q将?x)把对Apache对SVN的配|文仉攑֜q里<br /> <li>再在F:\SubversionFiles下目录Test1和Test2Qƈ它们变成SVN库(用svnadmin create命o(h)或者用TortoiseSVN来创建都可以Q?br /> <li>在httpd.conf的最后添加如下代?br /> <br /> <font style="background-color: #a9a9a9">#<br /> # SVN 目配置文gQ格式:(x)Include 配置文g?br /> #为每个虚拟目录设|一个配|文Ӟ用Include命o(h)加蝲</font><font style="background-color: #a9a9a9"><br /> # <br /> Include F:/SubversionFiles/conf/*.project<br /> <br /> <font style="background-color: #ffffff">x</font><font style="background-color: #a9a9a9"><font style="background-color: #ffffff">F:/SubversionFiles/conf/目录下的所?.project文g都包到httpd.conf中来<br /> </font><br /> <br /> </font></font> <li><font style="background-color: #ffffff">在F:/SubversionFiles/conf/创徏Test1.project和Test2.project文gQTest1</font><font style="background-color: #ffffff">内容如下QTest2可以做相应的修改<br /> <br /> </font><font style="background-color: #a9a9a9">#SVN目?br /> <location test1=""></location><br />      DAV svn<br /> <br />     #SVN目的\?br />      SVNPath F:\SubversionFiles\Test1<br /> <br />     #SVN目的\径权限授权文件存放\?br />     AuthzSVNAccessFile F:\SubversionFiles\conf\Test1.access<br /> <br /> </font><font style="background-color: #a9a9a9">#对于所有用户都需要n份验?br />     Satisfy Any<br />      Require valid-user<br /> <br /> #验证方式<br /> </font><font style="background-color: #a9a9a9">    </font><font style="background-color: #a9a9a9">AuthType Basic<br /> <br />     #目的名U?br />      AuthName "My Test1</font><font style="background-color: #a9a9a9">"<br /> <br />     #用户信息<br />      AuthUserFile  F:\SubversionFiles\conf\user<br /> <br /> </font><font style="background-color: #a9a9a9"><br /> <br /> <br /> <font style="background-color: #ffffff">以上配置含义是在Apache下徏立了(jin)一个叫作Test1的SVN虚拟目录Q指向F:\SubversionFiles\Test1Q授权配|文件是F:\SubversionFiles\conf\Test1.accessQ用户信息和密码文g是F:\SubversionFiles\conf\user<br /> <br /> <br /> </font></font> <li><font style="background-color: #a9a9a9"><font style="background-color: #ffffff"> </font><font style="background-color: #ffffff">通过以上配置Q我们就在Apache上徏立了(jin)Test1和Test2两个虚拟目录Q也是两个独立的SVN库,我们q需要两个文件访问权限配|的.access和包含登录用L(fng)user?nbsp;在F:\SubversionFiles\conf目录中创建用户列表文件userQ方法在上篇中已l说q,也就?/font></font><font style="background-color: #a9a9a9"><font style="background-color: #ffffff">htpasswd命o(h)Q我们需要创建Xrinehart, X-Killer, Guest三个用户?br /> <br /> </font></font> <li><font style="background-color: #a9a9a9"><font style="background-color: #ffffff">接下来,我们为Test1库创建它的访问权限文?/font><font style="background-color: #ffffff">F:\SubversionFiles\conf\Test1.access。在上篇文章中我们是采用Ҏ(gu)个用户分别赋予对应权限的方式Q如果用h较多Q管理v来就?x)比较麻烦(ch),q时我们需要用用户l来对用戯行管理。下面我们就来尝试用用户l配|访问权限。Test1.access文g内容如下Q?br /> <br /> <br /> </font></font><font style="background-color: #a9a9a9">[groups]<br /> AdminGroup = Xrinehart<br /> GuestGroup = guest<br /> <br /> [/]<br /> @AdminGroup = rw<br /> @GuestGroup = r<br /> <br /> X-Killer = rw<br /> </font><font style="background-color: #a9a9a9"><br /> <br /> </font><font style="background-color: #ffffff">        在上面的配置中,通过[groups]节定义了(jin)两个用户l:(x)AdminGroup和GuestGroupQƈXrinehart用户归入AdminGroup用户l,guest用户归入GuestGroup。再在下面的[/]定义?jin)他们对Test1库的根目录的操作权限QAdminGroupl有d权限QGuestGroupl只有读权限QX-Killer用户拥有d权限。这里需要注意的是定义权限的时候,用户l需要在前面加@W号来标C?br /> <br /> </font> <li>Z(jin)试效果Q我们可以将Test2.access文g写ؓ(f)Q?br /> <br /> <font style="background-color: #a9a9a9">[groups]<br /> AdminGroup = Xrinehart, X-Killer<br /> GuestGroup = guest<br /> <br /> [/]<br /> @AdminGroup = r<br /> @GuestGroup = rw<br /> <br /> <br /> </font> <li><font style="background-color: #ffffff">保存好上面的所有配|文件之后,重新启动Apache服务器。此时我们就可以在IE里面通过</font><a href="http://localhost:8080/Test1"><font style="background-color: #ffffff">http://localhost:8080/Test1</font></a><font style="background-color: #ffffff"> ?/font><a href="http://localhost:8080/Test2"><font style="background-color: #ffffff">http://localhost:8080/Test2</font></a><font style="background-color: #ffffff"> 来访问Test1和Test2库了(jin)Q你可以试一下,用户权限是否W合下面q个列表所C?做到q里QSVN在Apache上徏立多个库的配|也q完成?jin)?br /> <br /> <br />                                                  Test1                                            Test2<br /> <br /> Xrinehart                                    rw                                                  r<br /> X-Killer                                       rw                                                  r<br /> guest                                          r                                                    rw<br /> </font></li> </ol> </li> </ol> <img src ="http://www.aygfsteel.com/xiaosao/aggbug/153667.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/xiaosao/" target="_blank">cAng^Er</a> 2007-10-17 19:47 <a href="http://www.aygfsteel.com/xiaosao/archive/2007/10/17/153667.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title><?gt;实战SVN For Apache2Q一Q?http://www.aygfsteel.com/xiaosao/archive/2007/10/17/153664.htmlcAng^ErcAng^ErWed, 17 Oct 2007 11:39:00 GMThttp://www.aygfsteel.com/xiaosao/archive/2007/10/17/153664.htmlhttp://www.aygfsteel.com/xiaosao/comments/153664.htmlhttp://www.aygfsteel.com/xiaosao/archive/2007/10/17/153664.html#Feedback0http://www.aygfsteel.com/xiaosao/comments/commentRss/153664.htmlhttp://www.aygfsteel.com/xiaosao/services/trackbacks/153664.html原文地址Qhttp://www.cnblogs.com/Xrinehart/archive/2005/10/27/262759.aspx
  SVN最常见的配|模式便是与Apache集成Q这样SVN可以采用WebDev协议方式提供服务。主要的好处有:(x)通过Apache以HTTP方式IK防火墙Q便于在互联|环境用;提供目录的版本控ӞU?q制的文件对比方式等。下面将介绍如何SVN集成在Apache上?/p>
  1. 准备工作Q?

    1. 下蝲软gQ?
      1. SVN服务器端E序。到官方|站 的下载二q制安装文gQ来?a target="_self">二进制包下蝲部分  Q找?Windows NT, 2000, XP and 2003部分Q然后选择"this directory"Q这h们可以看到许多下载的内容Q目前可以下?a onclick="return launch(this.href, 1)" > svn-1.2.3-setup.exe?br />
      2. TortoiseSVNQ客L(fng)E序。TortoiseSVN是扩展Windows Shell的一套工P可以看作Windows资源理器的插gQ安装之后Windows可以识别Subversion的工作目录?br /> 官方|站?a >TortoiseSVNQ下载方式和前面的svn服务器类|?a >Download面的我们选择Official version for Win2k/XP or higher的版本,然后在sourceforge?a target="_self">下蝲面选择目前的最高稳定版本的安装文gTortoiseSVN-1.2.5.4719-svn-1.2.3.msi。(注意QTortoiseSVN有一个特D对VS.Netq行时一个BUG修正的版本,?a target="_self">下蝲面有选择QSpecial version for Win2k/XP or higher: (We provide NO support for this!) uses _svn folders instead of .svn to work around the VS.NET bug with web projects. If you don't use web projects then please use the official version. Q?br />
      3. TortoiseSVN的中文语a?/strong>Q注意这个需要下和客L(fng)E序版本相同的。可以在Download面内的Language Packs选择下蝲?br />
      4. Apache服务器程序。可以到Apache官方|站下蝲最新版本的ApacheQƈ且SVN必须q行在Apache2以上版本Q在下蝲面选择Windows的安装包文gapache_2.0.55-win32-x86-no_ssl.msi

      5. AnkhSVNQ可选安装VS.Net的SVN插g。有0.5?.6版本选择Q?.6版支持VS2005 Beta2Q?a >下蝲面?br />
    2. 停止IISQ因为Apache默认安装?0端口Q需要关闭IIS避免端口冲突。可以在安装好之后再调整端口?br />

  2. 开始安装:(x)

    1. 先安装Apache服务器。在到填写ServerInfo的时候,若机器已l启用了(jin)ADQ安装程序会(x)自动填写Q否则自己手动填写。安装完成之后到安装目录下找到conf目录下的httpd.config文gQ搜索ListenQƈListen后面?0改ؓ(f)8080Q或者你希望的端口)(j)Q然后重新启动Apache服务器,q时可以?a href="http://localhost:8080/">http://localhost:8080 来测试是否安装正?br />
    2. 再安装SVN服务器,没有什么好说的Q一路回车就可以?jin)。(安装SVNӞL(fng)保Apache服务器正在运行状态,安装q程中可能会(x)Apache关闭Q重新启动属于正常现象)(j)

  3. 配置Apache服务器与SVN集成Q?br />

    1. 首先?font face="Times New Roman, serif">Subversion安装目录bin\下面的两个文Ӟ(x)mod_authz_svn.so?font face="Times New Roman, serif">mod_dav_svn.so复制?font face="Times New Roman, serif">Apache安装目录modules\目录下?br />
    2. 有些文章说需要再修改httpd.confQƈ做如下修改:(x)
      扑ֈApache安装目录下的conf目录Q用文本~辑器打开httpd.confQ找C下两行:(x)

      #LoadModule dav_module modules/mod_dav.so
      #LoadModule dav_fs_module modules/mod_dav_fs.so

      每行前面的注释W?#8220;#”L。再在所有LoadModule语句的最后添加一下几行:(x)

      #SVN
      LoadModule dav_svn_module modules/mod_dav_svn.so
      LoadModule authz_svn_module modules/mod_authz_svn.so

      但是我安装完之后发现q个文g已经被做?jin)那些修改,大概是新版的SVN安装E序做了(jin)一些优化吧。其实在成功安装SVN之后QApache服务器已l和SVN初步集成。如图:(x)

      Apache.jpg

      注意下面的状态栏已经是Apache/2.0.55 SVN1.2.3 DAV/2

    3. 建立一个SVN存放文g的目录,我在F盘下创徏一个文件夹QF:/SubversionFiles
    4. 接下来我们必d诉Apache我们的资源库所在的路径Q可以通过Location指o(h)来完成这个设|。因Z希望为每个单独的目都进行单独的讄Q所以我们把所有项目都存放在统一的资源库目录Q那么可以用SVNParentPath指o(h)来指定存放所有项目的路径。在httpd.conf文g最后添加下面配|:(x)

      #SVN

      <Location /svn>
          DAV svn
          SVNParentPath "F:/SubversionFiles"
      </Location>

    q样我们可以通过http://myhost:8080/svn/<目?gt; 来访问存放于资源库F:/SubversionFiles中的指定目。当然有可能你ƈ不希望某个项目提供这样一U访问方式,q时候你可以使用SVNPath为每个项目进行单独的讄QSVNPath的用方法如下:(x)

        DAV svn
        SVNPath "F:/SubversionFiles/project1"

    同样把这D配|放在httpd.conf最后,重启Apache HTTP服务卛_通过http://myhost:8080/svn/project1 来访问project1目的资源库?/p>

    1. 下面作一个测试:(x)

      1. 到F:\SubversionFiles下徏立一个子目录TestQ然后到Aapche下的Bin目录下执行svnadmin create F:\SubversionFiles\Test

      2. 打开览器输入网址Q?a href="http://localhost:8080/svn/Test">http://localhost:8080/svn/Test Q应该可以正访问,但当前该目下还没有加入M内容Q所以显CZؓ(f)I的

      3. 有一炚w要提C的是,现在的访问是完全匿名的,M人都可以对SVNq行操作。所以我们接下来利用Apache的权限管理功能来对SVNq行用户验证集成

    2. 加入用户w䆾验证Q?br />
      在确定对讉K用户的权限控制之前,你必规划好是对整个资源库中的所有项目还是单独的某一个项目进行统一的n份验证, 也就是我们前面讲到的是用SVNParentPathq是SVNPath的问题?br />
      最单的w䆾验证方式是用Basic HTTP Authentication机制Q该方式通过用户名和口o(h)对访问用戯行n份验证。我们可以直接通过Apache提供的支持进行设|。Apache提供一个htpasswd工具来管理用户名和口令。接下来我们利用q个工具来添加两个用戗?br />
      在命令行H口中{到Apache所在的目录Q执行下列命?br />
      说明Q创建用户Xrinehart
      输入Qhtpasswd –c F:\SubversionFiles\svn_auth_passwd Xrinehart
      说明Q?c参数来创Z个passwd文g
      输出Q?br /> New password: *****
      Re-type new password: *****
      Adding password for user Xrinehart

      再创建用L(fng)时候就不用-c参数Q而是?m参数Q因为文?/font>svn_auth_passwd ?/font>l创建?br />

      打开svn_auth_passwd文gQ密码用MD5加密q了(jin)Q而且同样的密码加密出来的内容却不相同

      接下来我们必d诉Apache服务器如何用这个passwd文gQ打开httpd.conf扑ֈ刚才我们d的Location配置的位|,修改如下Q?br />
      #
      # SVN
      #

        DAV svn
        SVNParentPath "F:/SubversionFiles"

      # how to authenticate a user
       AuthType Basic
       AuthName "Subversion repository"
       AuthUserFile "F:/SubversionFiles/svn_auth_passwd"
       
        # only authenticated users may access the repository
      Require valid-user


      重新启动Apache HTTP服务器,使用览器打开 http://localhost:8080/svn/Test 你将?x)看到要求登录的对话框,输入你刚讄的用户名和口令即可?br />
      q样Apache和SVN的集成就基本告成?br />



cAng^Er 2007-10-17 19:39 发表评论
]]>
վ֩ģ壺 Ӣ| | ء| ϰˮ| | | | | Ϫ| Ԫ| | | ϰ| Դ| | | Ϫ| μԴ| | ̰| | | | | ƫ| ˫| | | ٺ| | | ̨| | | ٺ| | ϼ| ֻ| ޻| ʲ| |