(引自:
http://www.subversion.org.cn/tsvndoc/tsvn-serversetup.html#tsvn-serversetup-mod_authz_svn)
本人最近由于工作需要研究了一些SVN的配置工作,原來都是用CVS的所以還是需要學(xué)習(xí)一些的。
為了使用TortoiseSVN(或任何其他Subversion客戶端),你需要放置你的版本庫(kù),你可以將版本庫(kù)存于本地并使用
file://協(xié)議訪問,也可以放置于服務(wù)器,使用
http://或
svn://訪問,這兩種服務(wù)器協(xié)議也可以被加密,使用
https://或
svn+ssh://。
1、安裝Apache
可以安裝到Windows2000、WinXP+SP1還是Windows2003中。
a、從Apache網(wǎng)站
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安裝程序,你可以雙擊它,然后它會(huì)指導(dǎo)你的安裝過程,請(qǐng)確認(rèn)你輸入的server的URL正確(如果你的服務(wù)器沒有dns名稱,請(qǐng)直接輸入IP地址)。建
議安裝Apache
為所有用戶,在80端口,作為一個(gè)服務(wù)
。注意:如果你已經(jīng)有了IIS或其他監(jiān)聽80段口的程序,安裝會(huì)失敗,如果發(fā)生這種情況,直接到程序的安裝目錄
\Apache Group\Apache2\conf
,打開
httpd.conf
。編輯文件的
Listen 80
為其他可用的端口,例如
Listen 81
,然后重新啟動(dòng)-這樣就不會(huì)那個(gè)問題了。
c、現(xiàn)在可以測(cè)試Apache服務(wù)器了,將瀏覽器指向
http://localhost(或ip+端口號(hào))/
-將會(huì)看到一個(gè)預(yù)先配置的網(wǎng)站。
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是珠聯(lián)璧合?。?。
b、運(yùn)行Subversion安裝程序,并根據(jù)指導(dǎo)安裝,如果Subversion認(rèn)識(shí)到你安裝了Apache,你就幾乎完成了工作。
3、配置
現(xiàn)在你已經(jīng)設(shè)置了Apache和Subversion,但是Apache不知道如何處理Subversion客戶端,例如TortoiseSVN。為了讓Apache知道哪個(gè)目錄是用來作為Subversion版本庫(kù),你需要使用編輯器(例如記事本)編輯Apache的配置文件(通常是
c:\program files\apache group\apache2\conf\httpd.conf
):
a、建立版本庫(kù)
在DOS下輸入以下命令(注意:先建立 D:\SVN 目錄):
svnadmin create D:\SVN\repository
于是建立了名為repository的版本庫(kù),
D:\SVN 目錄為以后增加其他所有版本庫(kù)的父路徑。
b、在配置文件最后添加如下幾行:
<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath D:\SVN
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile passwd
#AuthzSVNAccessFile svnaccessfile
Require valid-user
</Location>
這個(gè)配置告訴Apache你的所有的Subversion版本庫(kù)在物理上位于D:\SVN
,版本庫(kù)對(duì)外的URL是: http://localhost(或ip+端口號(hào))/svn/
,訪問需要文件passwd
中的用戶/密碼限制。
如果你希望所有人可以讀你的版本庫(kù),但是只有特定用戶可以寫,你可以修改下面幾行
Require valid-user
為:
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
c、為了創(chuàng)建passwd
文件,再次打開命令行提示符(DOS),來到apache2目錄(通常是c:\program files\apache group\apache2
)通過輸入下面的命令創(chuàng)建文件
bin\htpasswd -c passwd <username>
其中<username>為你要?jiǎng)?chuàng)建的用戶名稱。
如果想繼續(xù)添加用戶則輸入如下命令:
bin\htpasswd passwd <username>
d、再次重啟Apache服務(wù)。
e、將瀏覽器指向http://localhost(或ip+端口號(hào))//svn/repository
(repository
是你此前創(chuàng)建的版本庫(kù)名),如果一切正常,你會(huì)被提示輸入用戶名和密碼,然后你會(huì)看到版本庫(kù)的內(nèi)容。
f、如果不能訪問,可能是防火墻或殺毒軟件把80端口屏蔽了,更改httpd.conf中的端口號(hào)即可,或設(shè)置防火墻。
QA:
安裝Apache 2.0.x 版本常見錯(cuò)誤錯(cuò)誤:
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
然后把a(bǔ)pache裝成WINDOWS的服務(wù),方法是這樣的。進(jìn)入到C:/Program Files/Apache Group/Apache2/bin/目錄下,執(zhí)行下面的命令:apache -k install,這樣apache就做為windows的一項(xiàng)服務(wù)了,再啟動(dòng)apache就不出現(xiàn)上面的錯(cuò)誤提示了。
最后終于把Apache給啟動(dòng)起來了。