Subversion+Apache配置之完美體驗
本文向大家介紹一下Subversion+Apache配置問題,在所有的Subversion服務器配置方式中,基于Apache的是最靈活的。雖然配置起來有一點點復雜,但是它提供了其它方式所沒有的好處:
1.WebDAV
基于Apache配置的Subversion服務器使用了被許多其它程序支持的WebDAV協議。舉個例子,你可以在Windows的資源管理器中將這樣的一個版本
庫掛載成一個“Webfolder”,然后像文件系統中的其它文件夾一樣訪問它。
瀏覽版本庫
你可以在不安裝Subversion客戶端的情況下,使用瀏覽器來瀏覽版本庫中的內容。這將使得更大范圍的用戶可以訪問你的數據。
用戶驗證
你可以使用任何Apache支持的驗證機制,包括SSPI和LDAP。
安全
Apache是非常的穩定和安全,因此你的版本庫自然而然地擁有同樣的安全性。包括SSL加密。
2.安裝過程
2.1.安裝Apache
Subversion+Apache配置過程中,安裝Apache前,你要有一臺運行Windows2000、WindowsXP+sp1或Windows2003的電腦。
警告:請注意,沒安裝ServicePack1的WindowsXP將導致錯誤的網絡數據從而破壞你的版本庫!從http://httpd.apache.org/download.cgi下載最新版本的ApacheWeb服務器。確保你下載的版本大于2.0.54。2.0.54版本的Apache將不能與Subversion1.3.xx配合工作。而且,小于2.0.54的Apache也因為在windows上的編譯存在一個bug而導致不能與subversion1.2配合使用。一旦你已經有了Apache2的安裝程序,你可以雙擊它,它將引導你完成整個安裝過程。請確保你輸入正確的服務器URL(如果你的服務器沒有DNS名稱,你可以直接輸入IP地址)。我建議你將Apache安裝成forallUsers,onPort80,asaservice。
注意:如果你已經有一個IIS或者其它的程序使用80端口,安裝可能會失敗。如果是這樣,你可以到程序目錄下的ApacheGroup\Apache2\conf目錄中找到文件httpd.conf,將其中的Listen80改成一個不用的端口,比如Listen81。然后重新運行這個安裝程序,這次應該不會再有問題了?,F在你可以在你的瀏覽器中鍵入http://loccalhost/如果呈現了一個已經配置好的網站,那么你的Apache就安裝成功了。
警告:如果你將Apache安裝成一個服務,它將以本地system帳戶來運行。為Apache創建一個單獨的用戶來運行它將會更安全一些。請確保運行Apache的用戶有版本庫的完全訪問權限(右鍵版本庫目錄->屬性->安全)。要不然,用戶將無法提交他們的更改。就算Apache以本機system來運行,你也要設置它能完全讀寫版本庫目錄。如果沒有為Apache配置這個許可,用戶將會得到"禁止訪問"的錯誤信息,在Apache的錯誤日志中表現為錯誤500。
2.2.安裝Subversion
Subversion+Apache配置過程中,要安裝Subversion,從http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91(英文)或http://www.iusesvn.com/bbs/forumdisplay.php?fid=7(中文)下載最新版本的Subversion。運行Subversion安裝程序,如果安裝程序能夠識別你已經安裝了Apache,那么你的安裝基本上就OK了。如果它不能,那么你要做一些額外的步驟。
注:如果你先安裝Apache,再安裝Subversion,正常情況下下面的工作(2.3配置前)Subversion安裝程序已經幫你完成了.使用資源管理器,進入Sibversion的安裝目錄(通常為c:\programfiles\Subversion),找到文件httpd/mod_dav_svn.so和mod_authz_svn.so,將它們拷貝到Apache的modules目錄(通常為c:\programfiles\apachegroup\apache2\modules)。從Subversion的安裝目錄拷貝文件libdb43.dll到Apache的modules目錄。
使用如記事本之類的文本編輯器編輯Apache的配置文件(通常為c:\programfiles\apachegroup\apache2\conf\httd.conf),修改以下內容:去掉以下行的注釋(將開頭的#刪除):
CODE:#LoadModuledav_fs_modulemodules/mod_dav_fs.so
#LoadModuledav_modulemodules/mod_dav.so
在LoadModule節的最后添加以下兩行:
CODE:LoadModuledav_svn_modulemodules/mod_dav_svn.so
LoadModuleauthz_svn_modulemodules/mod_authz_svn.so。請期待下節Subversion+Apache配置介紹。
【編輯推薦】
- MyEclipse6.0集成SVN及配置詳解
- Subversion和TortoiseSVN如何在Windows下進行構建SVN版本控制
- 基于Java的svn客戶端工具JavaSVN 1.1.0.beta發布
- 七步搞定Subversion服務器在Ubuntu下的配置
- Subversion日期解析函數緩沖區溢出漏洞