(引自:
http://www.subversion.org.cn/tsvndoc/tsvn-serversetup.html#tsvn-serversetup-mod_authz_svn)
本人最近由于工作需要研究了一些SVN的配置工作,原來都是用CVS的所以還是需要學習一些的。
為了使用TortoiseSVN(或任何其他Subversion客戶端),你需要放置你的版本庫,你可以將版本庫存于本地并使用
file://協議訪問,也可以放置于服務器,使用
http://或
svn://訪問,這兩種服務器協議也可以被加密,使用
https://或
svn+ssh://。
1、安裝Apache
可以安裝到Windows2000、WinXP+SP1還是Windows2003中。
a、從Apache網站
http://httpd.apache.org/download.cgi下載Apache,最好是高于2.0.54版,但不要下載最新的如2.2.XX和2.1.XX的。
我下載的是 apache_2.0.59-win32-x86-no_ssl.msi。
b、一旦你有了Apache2安裝程序,你可以雙擊它,然后它會指導你的安裝過程,請確認你輸入的server的URL正確(如果你的服務器沒有dns名稱,請直接輸入IP地址)。建
議安裝Apache
為所有用戶,在80端口,作為一個服務
。注意:如果你已經有了IIS或其他監聽80段口的程序,安裝會失敗,如果發生這種情況,直接到程序的安裝目錄
\Apache Group\Apache2\conf
,打開
httpd.conf
。編輯文件的
Listen 80
為其他可用的端口,例如
Listen 81
,然后重新啟動-這樣就不會那個問題了。
c、現在可以測試Apache服務器了,將瀏覽器指向
http://localhost(或ip+端口號)/
-將會看到一個預先配置的網站。
2、安裝Subversion
a、從
http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91下載最新版本的Subversion(我下載的是svn-1.4.3-setup.exe,與apache_2.0.59-win32-x86-no_ssl.msi是珠聯璧合!)。
b、運行Subversion安裝程序,并根據指導安裝,如果Subversion認識到你安裝了Apache,你就幾乎完成了工作。
3、配置
現在你已經設置了Apache和Subversion,但是Apache不知道如何處理Subversion客戶端,例如TortoiseSVN。為了讓Apache知道哪個目錄是用來作為Subversion版本庫,你需要使用編輯器(例如記事本)編輯Apache的配置文件(通常是
c:\program files\apache group\apache2\conf\httpd.conf
):
a、建立版本庫
在DOS下輸入以下命令(注意:先建立 D:\SVN 目錄):
svnadmin create D:\SVN\repository
于是建立了名為repository的版本庫,
D:\SVN 目錄為以后增加其他所有版本庫的父路徑。
b、在配置文件最后添加如下幾行:
<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath D:\SVN
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile passwd
#AuthzSVNAccessFile svnaccessfile
Require valid-user
</Location>
這個配置告訴Apache你的所有的Subversion版本庫在物理上位于D:\SVN
,版本庫對外的URL是: http://localhost(或ip+端口號)/svn/
,訪問需要文件passwd
中的用戶/密碼限制。
如果你希望所有人可以讀你的版本庫,但是只有特定用戶可以寫,你可以修改下面幾行
Require valid-user
為:
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
c、為了創建passwd
文件,再次打開命令行提示符(DOS),來到apache2目錄(通常是c:\program files\apache group\apache2
)通過輸入下面的命令創建文件
bin\htpasswd -c passwd <username>
其中<username>為你要創建的用戶名稱。
如果想繼續添加用戶則輸入如下命令:
bin\htpasswd passwd <username>
d、再次重啟Apache服務。
e、將瀏覽器指向http://localhost(或ip+端口號)//svn/repository
(repository
是你此前創建的版本庫名),如果一切正常,你會被提示輸入用戶名和密碼,然后你會看到版本庫的內容。
f、如果不能訪問,可能是防火墻或殺毒軟件把80端口屏蔽了,更改httpd.conf中的端口號即可,或設置防火墻。
QA:
安裝Apache 2.0.x 版本常見錯誤錯誤:
Syntax error on line 198 of C:/Program Files/Apache Group/Apache2/conf/httpd.conf:
ServerAdmin takes one argument, The email address of the server administrator
Note the errors or messages above, and press the <ESC> key to exit. 24...
更改配置文件第198行為
#ServerAdmin
然后把apache裝成WINDOWS的服務,方法是這樣的。進入到C:/Program Files/Apache Group/Apache2/bin/目錄下,執行下面的命令:apache -k install,這樣apache就做為windows的一項服務了,再啟動apache就不出現上面的錯誤提示了。
最后終于把Apache給啟動起來了。