Believe it,do it!

          Ideal is the beacon. Without ideal, there is no secure direction; without direction ,there is no life.
          理想是指路明燈。沒有理想,就沒有堅定的方向;沒有方向,就沒有生活。
          CTRL+T eclipse
          posts - 35, comments - 3, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          Apache和Subversion集成安裝與配置

          Posted on 2009-11-24 17:28 三羽 閱讀(263) 評論(0)  編輯  收藏
          要準備的東西如下:
          1,apache_2.0.63-win32-x86-no_ssl.msi
          下載:http://apache.mirror.phpchina.com/httpd/binaries/win32/apache_2.0.63-win32-x86-no_ssl.msi
          2,svn-1.4.5-setup.exe
          下載地址:http://subversion.tigris.org/files/documents/15/39559/svn-1.4.5-setup.exe
          當然,你也可以選擇安裝TortoiseSVN.但是我沒有裝,因為我的源碼管理都是用netbeans完成的.

          好了,準備的兩個軟件都下載下來以后,就可以開始安裝了.
          首先安裝apache,一般來說直接點下一步就可以了,在設置domain以及host的時候,設置為localhost就可以了,Email你可以填你自己的Email,也可以隨便填一個.安裝apache要注意的是,你的電腦上80端口不能被占用,否則你的http服務是啟動不起來的,我就遇到過這事,因為我用了skype,它在本機上打開了80和443端口來監(jiān)聽,搞得我一開始裝不好,總是啟動不起來,后來才發(fā)現(xiàn)是skype占用了80端口,于是把skype的設置改了以后,重裝apache才成功.裝好apache以后,這個時候,它已經在運行了,你可以在瀏覽器的地址欄輸入http://localhost看看,是否安裝成功,如果安裝成功的話,這個時候瀏覽器里面應該是可以看到一個頁面的.
          然后,再安裝svn-1.4.5-setup.exe,也很簡單,一步一步點下步就可以了,在安裝的過程中,它會默認選中一些選項,其中就有一個是是否對apache的HTTP服務器提供支持的選項,這個默認是勾上的,不要去反選它,其它的你可以反選掉.然后svn就宣布安裝成功了.你可以到CMD下面去試一下svn這個命令,如果有輸出,則說明安裝成功了,如果提示svn 不是內部或外部命令,也不是可運行的程序或批處理文件。那就說明沒有裝好.或者沒有把這個命令加入到path中,所以最好的辦法是到svn的安裝目錄下的bin里面去看一下.
          兩者都裝好了以后,就開始配置,當然,配置也是最重要的.
          首先要建立一個數(shù)據(jù)倉庫,我們假設建在E盤,數(shù)據(jù)倉庫最好不要建在C盤,因為C盤重裝系統(tǒng)以后就格了.我們先在E盤下面建立一個目錄叫svnroot,然后在svnroot下面再建立一個我們專門放我們工程的目錄,比如叫MyProject.于是我們在E盤下面就有了這個一個文件夾:E:\svnroot\MyProject,然后我們用svnadmin的命令,使這個文件夾變成我們的數(shù)據(jù)倉庫,命令如下:
          svnadmin create E:\svnroot\MyProject
          如果運行成功的話,什么也沒有輸出,這個時候,我們再來到MyProject文件夾下面,我們會發(fā)現(xiàn)多了幾個文件夾和文件,我們打開conf文件夾,然后再打開svnserve.conf文件,找到如下行# password-db = passwd,然后把它前面的#去掉,表示MyProject是需要密碼驗證的.但是我們密碼設在哪里呢,這個時候我們再打開conf文件夾下面的passwd文件,用文本編輯器打開,在[users]下面加上我們需要啟動的人員的用戶和密碼,比如
          [users]
          hadeslee=hadeslee1234
          tom=123456

          這個的話,我們就啟動了兩個用戶,一個叫hadeslee,密碼是hadeslee1234,一個叫tom,密碼是123456.然后我們保存passwd文件.然后,我們再建一個文件,叫access.auth,這個文件是設置訪問權限的,里面內容如下:
          [MyProject:/]
          hadeslee = rw
          [MyProject:/module1]
          tom=rw
          hadeslee=rw

          這表示,MyProject下面的所有子目錄hadeslee都是有權限讀寫的,但是tom只有權限讀寫此項目下面的module1目錄,這個各自的訪問權限就分的更細致了.有關于MyProject文件夾下面的設置,我們就告一段落了,我們現(xiàn)在開始設置apache,使它能和subvertion一起工作.

          首先來到Subersion的安裝目錄,進入它的bin目錄,我們會發(fā)現(xiàn)如下兩個文件:
          mod_authz_svn.so
          mod_dav_svn.so

          我們把這兩個文件復制一下,粘帖到apache的安裝目錄下的modules文件中,然后我們再打開apache安裝目錄下的conf文件夾,打開httpd.conf文件.增加如下兩行:
          LoadModule dav_svn_module modules/mod_dav_svn.so
          LoadModule authz_svn_module modules/mod_authz_svn.so

          注意,由于dav_svn需要dav_module的支持,所以要確保下面這一行沒有被注釋,并且保證在dav_svn之前加載:
          LoadModule dav_module modules/mod_dav.so
          然后模塊的設置就完成了,下面我們要設置SVN的目錄,以使我們的apache能知道訪問不同的URL的時候,它去哪里尋找這個URL所對應的SVN目錄.
          httpd.conf文件中,增加如下內容:
          <Location /svn/MyProject>
          DAV svn
          SVNPath E:/svnroot/MyProject

          AuthzSVNAccessFile E:/svnroot/MyProject/conf/access.auth
          Satisfy Any
          Require valid-user

          AuthType Basic
          AuthName "Subversion repositories"
          AuthUserFile  E:/svnroot/MyProject/conf/users.auth
          Require valid-user
          </Location>


          添加完上面這些,我們會發(fā)現(xiàn)access.auth是我們剛才新建的,可是users.auth我們并沒有新建啊.怎么就把它加進去了.不要急,現(xiàn)在我們就來生成users.auth文件.

          進入apache的安裝目錄的bin文件夾,輸入如下命令:

          D:\Program Files\Apache Group\Apache2\bin>htpasswd -cb users.auth hadeslee hadeslee1234
          Automatically using MD5 format.
          Adding password for user hadeslee

          D:\Program Files\Apache Group\Apache2\bin>

          我們就會發(fā)現(xiàn)在bin目錄生成了users.auth,我們可以看到,hadeslee用戶名已經被添加進去了,密碼是用MD5加密過的.然后我們還要增加用戶呢,可以用如下方法:
          D:\Program Files\Apache Group\Apache2\bin>htpasswd -b users.auth tom 123456
          Automatically using MD5 format.
          Adding password for user tom

          D:\Program Files\Apache Group\Apache2\bin>


          只是在生成密碼的時候,小了一個c的參數(shù),因為c表示重新生成一個這樣的文件,我們第一次的時候是要加的,后面我們要添加用戶的時候,就不用這個c了.然后打開users.auth,會發(fā)現(xiàn)兩個用戶都已經在里面了,這個時候,我們把users.auth移到E:/svnroot/MyProject/conf/里面去,使我們上面的設置生效.

          這個時候,我們的設置就完成了.可以在瀏覽器里面輸入http://localhost/svn/MyProject試試看.

          如果以后我們還要加入其它的項目呢,可以有兩點解決方式
          1,把以后的項目也導入到我們的MyProject的倉庫中,這個的話,就不用改什么配置了
          2,新建一個數(shù)據(jù)倉庫,然后只要按上面的步驟,把新的<Location...>設置放到httpd.conf里面就可以了.
          當然,驗證文件,訪問權限文件,還有訪問SVN的密碼都要自己按上面的方法再設一遍.

          只有注冊用戶登錄后才能發(fā)表評論。


          網站導航:
           
          主站蜘蛛池模板: 铜川市| 曲水县| 龙南县| 克山县| 禄劝| 张家港市| 常熟市| 靖远县| 榆林市| 汨罗市| 县级市| 淮阳县| 巴彦淖尔市| 循化| 乌兰县| 新郑市| 景德镇市| 营山县| 永顺县| 枣庄市| 高安市| 尚志市| 乌拉特前旗| 梅河口市| 历史| 通山县| 鄄城县| 佳木斯市| 额济纳旗| 连南| 郯城县| 房山区| 社旗县| 农安县| 巴南区| 隆安县| 巴里| 米易县| 互助| 饶河县| 合肥市|