windows部署apache svn

終於弄好了,雖然用visualsvn server可以很快部署好,但畢竟沒有apache的優勢
學習這個,我花了不少的時間,中間遇到很多問題卡死,不過都解決了,趕快記錄一下,希望對大家有幫助

需要的工具 
httpd-2.2.22-win32-x86-openssl-0.9.8t.msi  (apache2.2.22)
Setup-Subversion-1.5.3.msi (SVN服務器)
TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi (SVN客戶端工具)

下載地址可以去的資源包:http://download.csdn.net/detail/kimizhou_blog/4242759

1:首先安裝apache
    apache的安裝還是簡單的,運行httpd-2.2.22-win32-x86-openssl-0.9.8t.msi ,一直下一步
    如果遇到問題,看看是否是80端口被佔用了,如果被佔用了,修改配置文件的默認端口號,我的apache是安裝的D盤,我的配置文件的路徑是:
    D:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf
    用記事本打開,找到Listen 80 這一行,把80改成沒有被佔用的號,比如說:81 也可以
    apache安裝完以後,在瀏覽器輸入http://127.0.0.1:81/  如果能夠打開,出現It works!則說明安裝成功 ,我的改成了81端口,所以打開的路徑是127.0.0.1:81

2::安裝SVN服務器
  運行Setup-Subversion-1.5.3.msi,這個很智能,他會自動尋找你安裝的apache版本,這裏我們選擇2.2,因爲我們安裝的apache版本是2.2的,然後一直下一步,直到安裝完成

3:配置SVN服務
  這個也是最麻煩的步驟,也是最容易出錯的步驟了,一共分爲6個小步驟

    (1)複製 文件 
     找到mod_authz_svn.so 和 mod_dav_svn.so,以及目錄下的所有DLL 結尾的文件 ,在SVN安裝路徑下可以找到,我的路徑是:D:\Program Files\Subversion\bin

    (2)粘貼這些文件到以下目錄
     也就是Apache的安裝目錄,我的目錄是:D:\Program Files\Apache Software Foundation\Apache2.2\modules

    (3)修改配置文件 httpd.conf
     我的httpd.conf文件在 D:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf 中,用記事本打開:

     修改3個地方 : 
           ①:#LoadModule dav_fs_module modules/mod_dav_fs.so
               #LoadModule dav_module modules/mod_dav.so

               修改爲: 
               LoadModule dav_fs_module modules/mod_dav_fs.so
               LoadModule dav_module modules/mod_dav.so

               也就是去掉前面的 #號

           ②:然後在LoadModule節的最後添加以下兩行:
           LoadModule dav_svn_module modules/mod_dav_svn.so
           LoadModule authz_svn_module modules/mod_authz_svn.so


           ③:增加SVN配置節點:

           <Location /svn> 
    DAV svn 
    SVNPath C:/svn/test
  # 指定版本庫服務器授權類型
    AuthType Basic 
# 指定版本庫服務器授權名稱  
    AuthName "Subversion repository"
  # 指定用戶文件位置
    AuthUserFile C:/svn/passwd  
  # 指定用戶權限配置文件位置
   AuthzSVNAccessFile C:/svn/svnaccessfile
  # 強調通過認證的用戶可以訪問
         Require valid-user
  # 指出可以使用*表示所有人(可以不是用戶文件中指定的用戶)
    #Satisfy Any
    </Location>


           以上代碼添加在記事本最後就可以了 ,注意 版本庫test需要手動創建,passwd文件也需要創建,svnaccessfile也需要創建,下面會有介紹怎麼創建
           修改完以上以後,保存,然後關閉,重啓apache服務器,注意,正常情況下apache服務器是可以啓動成功的,如果啓動不成功,說明這個配置文件你有修
           改錯誤的地方,哪裏錯了,可以查看apache的日誌,apache的日誌,我的路徑是:
           D:\Program Files\Apache Software Foundation\Apache2.2\logs\error.log

     (4) 根據配置文件的路徑,創建passwd文件
        下面,我們就來創建上面提到的passwd文件,你打開命令行(DOS窗口),將當前目錄切換到apache2目錄(通常爲D:\Program Files\Apache Group\Apache2,

         或者是D:\Program Files\Apache Software Foundation\Apache2.2\),
         然後打入以下命令以創建文件: bin\htpasswd -c passwd <username>
         比如: bin\htpasswd -c c:\svn\passwd admin
         命令分析:
        c:\svn\passwd 表示會在:c:\svn目錄下創建一個passwd文件
        admin 表示用戶名
        此命令執行Apahce的bin目錄下的htpasswd.exe來創建一個密碼文件,創建完成之後,重啓Apache服務。如果你是需要創建用戶的話,-c不輸入即可,比如說:
        htpasswd c:\svn\passwd zyq ,這樣就等於創建了一個新用戶zyq,如果是修改密碼,也是一樣,-d 是刪除用戶命令

     (5)創建權限配置文件 

      這個也是相當的麻煩,在c:\svn目錄下創件svnaccessfile文件,然後打開進行配置,可以參照下面的示例:

     # 爲所有庫指定默認訪問規則
     # 所有人可以讀
     [/]
     * = rw
     # 爲test版本庫制定權限
     #admin組擁有讀寫權限
     #user組只有讀取權限
     [test:/svn/test]
     * = rw
    

     具體語法,需要需要學習,這裏是簡單的所有人都可以訪問,否則要設置權限組,用戶,十分麻煩,不適合新手。

   (6)創建版本庫 test
    這個需要你安裝了TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi以後創建 
    具體方法很簡單,進入C:\svn這個目錄下,C:\svn是我在配置文件中指定的,你也可以自己定義。
    右鍵TortoiseSVN->Create repository here 便建立了test版本庫

4:安裝TortoiseSVN
TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi 點擊以後直接安裝,很方便,安裝完以後會重啓電腦哦
安裝完TortoiseSVN,記得回到3-(6),創建版本庫


5:檢測SVN是否可用 
在瀏覽器中輸入:http://127.0.0.1:81/svn/test/
然後注入賬號和密碼,如果可以訪問,就成功了,如果不能訪問,具體是哪個步驟錯了,可以訪問apache的日誌,路徑在apache的
安裝目錄下,我的路徑是:D:\Program Files\Apache Software Foundation\Apache2.2\logs\error.log

注意:svnaccessfile文件如果不能正常加載,可能是你語法錯誤,推薦用我上面寫的具有所有權限的代碼,適合新手
或者是 編碼格式不正確,請用ascii格式,記事本打開,另存爲,就能選擇格式保存了,祝你成功。SVN的具體用法,這裏就不做介紹了
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章