Win2003下_Apache+SVN+花心殼整合

1. VirtualBox虛擬機中安裝好Win2003系統,打好升級補丁。apache

2. 防火牆設置:添加36908080、等要設置的端口到例外設置(這個很重要,要否則外部沒法訪問你的這些端口對應的服務)服務器

3. 下載Apache2.2.22 (httpd-2.2.22-win32-x86-openssl-0.9.8t.msi),安裝到 D:\apache2.2svn

4. 下載svn-win32-1.7.3.zip,解壓到D:\svn\svn_server工具

5. 建立SVN的倉庫根目錄D:\svn\svn_repository,在D:\svn\svn_repository下分別建repo1repo2兩個倉庫目錄。ui

6. 下載SVN的客戶端操做工具:TortoiseSVN-1.7.5.22551-win32-svn-1.7.3.msiSVN服務安裝工具SVNService加密

7. SVNService.exe複製到D:\svn\svn_server\bin中,用cmd進入到該目錄,而後使用命令:spa

   SVNService -install -d -r D:\svn\svn_repository安裝好svn服務(更改時用SVNService -setup -d -r c:\otherplace\svnrepo),此時SVN的監聽目錄設爲了D:\svn\svn_repositoryserver

8. 建立真正的SVN創庫:進入到D:\svn\svn_repository\repo1,使用TortoiseSVN在該目錄            ip

   中執行建立SVN倉庫的操做(Create repository here)來建立真正的倉庫。用一樣的方法ssl

   在repo2中進行建庫。

9. 對數據倉庫進行統一設置:(1)在D:\svn\svn_repository下建立passwd 用戶賬號的密碼

                               文件和建立autzh倉庫受權文件 (都留它空白)。

                         (2)進入repo1repo2中的conf目錄,刪除裏面的passwd

                              和authz文件,對其中的svnserve.conf文件進行設置:

          anon-access = none  #意爲未經受權,不能讀定

          auth-access = write  #受權後可讀可寫

          password-db = ../../passwd  #引用上兩目錄中的passwd文件做爲用戶管理文件 

          authz-db = ../../authz  #引用上兩目錄中的authz文件做爲用戶倉庫受權文件

                  

10. 複製D:\svn\svn_server\bin中的mod_authz_svn.somod_dav_svn.so

D:\apache2.2\modules目錄。

11. 複製D:\svn\svn_server\bin中的全部dll文件到D:\apache2.2\bin目錄(相同的覆蓋)。

12. 配置D:\apache2.2\conf中的httpd.conf文件:

1)去除LoadModule dav_module modules/mod_dav.so

          LoadModule dav_fs_module modules/mod_dav_fs.so這兩行前面的#

2)接着上兩行添加:LoadModule dav_svn_module modules/mod_dav_svn.so

                     LoadModule authz_svn_module modules/mod_authz_svn.so

 (3)httpd.conf最後面添加兩個倉庫的訪問配置:

<Location /repo1>

DAV svn

SVNPath "D:\svn\svn_repository\repo1"

AuthType Basic

AuthName "Subversion repositories"

AuthUserFile "D:\svn\svn_repository\passwd"

AuthzSVNAccessFile "D:\svn\svn_repository\authz"

Require valid-user

</Location>

<Location /repo2>

DAV svn

SVNPath "D:\svn\svn_repository\repo2"

AuthType Basic

AuthName "Subversion repositories"

AuthUserFile "D:\svn\svn_repository\passwd"

AuthzSVNAccessFile "D:\svn\svn_repository\authz"

Require valid-user

</Location>

13. 修改httpd.conf中的apache監聽端口:Listen xxxx

14. 配置passwd文件:

              htpasswd -b D:\svn\svn_repository\passwd User1 123456 

              htpasswd -b D:\svn\svn_repository\passwd User2 654321 , 

     以上命令是在原有密碼文件中增長兩個用戶User1User2,默認採用MD5加密方式

15. 配置authz文件:

[/]

*=  #根目錄任何人都不可讀和寫

[repo1:/]

*=     #未受權不可讀寫

User1=r  #User1對該倉庫可讀,不可寫

User2=rw  #User2對該倉庫可讀可寫

[repo2:/]

*=

User1=rw

User2=rw

16. 重啓SVN服務和重啓Apache服務器。

17. 經過TortoiseSVN客戶端工具,輸入http://192.168.1.101:xxxx/repo1就能訪問repo1創庫。

18. 

19. A

20. A

21. A

22. A

23. A

24. A

25. A

26. aa

相關文章
相關標籤/搜索