日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

SVN服務器配置詳解

 Lucia‘s doc 2012-02-13
一、安裝

安裝 Apache 2.2
安裝 Subversion 1.5.5

找到 Subversion 安裝目錄下的以下文件:

bin/mod_authz_svn.so
bin/mod_dav_svn.so


復制到 Apache 安裝目錄下 modules 目錄中

bin/intl3_svn.dll
bin/libdb*.dll


復制到 Apache 安裝目錄下 bin 目錄中(這里似乎并不是必須的,我猜想這里或許是為了支持 Berkeley DB 而所作的操作,但我并不打算深入研究下去)

二、環(huán)境

假設 Subversion 安裝在 D:\SVN\Subversion 目錄下
假設創(chuàng)建 D:\SVN\Repositories\ 目錄作為版本庫總目錄
假設在 D:\SVN\Repositories\ 中創(chuàng)建目錄iSLeeBlog,并在其中創(chuàng)建版本庫,假設已經配置好用戶授權,那么應該可以通過 svn://localhost/iSLeeBlog 訪問版本庫。
假設統(tǒng)一將Apache的SVN項目配置文件放在 D:\SVN\conf 目錄下
假設Apache的默認端口號為8080

三、配置Subversion版本庫管理服務器

找到創(chuàng)建的版本庫目錄下的配置文件,例如:D:\SVN\Repositories\iSLeeBlog\conf\

將 passwd 文件改名為 passwd.svn(也可以不改名,這里是為了結構更清晰)

用文本編輯器修改 svnserve.conf 文件,找到以下兩行

#password-db = passwd
...
#authz-db = authz


修改為:

password-db = passwd.svn
...
authz-db = authz


這里 authz 就是授權文件的名稱,在 Subversion 和 Apache 中可以使用相同的授權文件,但無法使用相同的 passwd 文件,因為 Apache 是以加密方式存儲密碼,而 Subversion 使用明文儲存密碼,所以上面將 Subversion 生成的 passwd 文件改名,說明其僅用在 Subversion 下。

思考:這里可以使用相同的賬號文件嗎?顯然,我對 Apache 的配置還是不太熟悉,兩個賬號文件需要同步維護比較麻煩,如果您知道如何解決,請您幫助我,謝謝。

如何配置授權文件不再詳述,請自行查看授權文件中自帶的注釋,已經解釋的非常清晰。

四、配置Apache服務器

找到 Apache 安裝目錄下 conf/httpd.conf 文件,用文本編輯器修改:

找到以下兩句取消注釋:

#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_module modules/mod_dav.so


增加以下兩句

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so


使用 Apache 安裝目錄下的 bin/htpasswd.exe 可執(zhí)行文件生成授權文件

第一次生成,使用 -cb 參數(shù):

htpasswd -cb [filename] [username] [password]


例如:

htpasswd -cb passwd.apache islee 123


添加新用戶,使用 -b 參數(shù):

htpasswd -b passwd.apache another 456


將生成的 passwd.apache 文件移動到 D:\SVN\Repositories\iSLeeBlog\conf 目錄下

a) 配置單項目

在Apache的conf/httpd.conf文件,在末尾添加以下內容

#配置虛擬目錄
<location /svn/iSLeeBlog>
#引用遠程訪問模塊
DAV svn

#版本庫路徑
SVNPath D:\SVN\Repositories\iSLeeBlog

#授權文件
AuthzSVNAccessFile D:\SVN\Repositories\iSLeeBlog\conf\authz

#所有用戶都需要身份驗證
Satisfy Any
Require valid-user

#驗證方式
AuthType Basic

#項目的名稱
AuthName "iSLee's Blog Project"

#用戶文件
AuthUserFile D:\SVN\Repositories\iSLeeBlog\conf\passwd.apache
</location>


b) 配置多項目

在 httpd.conf 文件末尾增加一下一句,作用是引用指定目錄下的所有 project 文件

Include D:\SVN\conf\*.project


然后在指定目錄,這里是 D:\SVN\conf 中創(chuàng)建單個項目配置文件 iSLeeBlog.project 文本文件

iSLeeBlog.project 文件中的內容同“a) 配置單項目”節(jié)中的內容完全相同,新的項目之需要繼續(xù)創(chuàng)建 project 文件,并根據(jù)需要更改虛擬目錄路徑以及授權文件名稱即可。

配置以后需要重啟 Apache 服務器。

五、訪問

如果在局域網中,那么可以輸入“svn://localhost/iSLeeBlog”即可訪問版本庫。

如果遠程訪問Apache服務器,那么可以在瀏覽器或客戶端軟件中輸入“http://yourdomain or IP/svn/iSLeeBlog”即可訪問iSLeeBlog項目。

六、備注

Subversion 的客戶端 TortoiseSVN 是一個很棒的工具,雖然它與本文無關,但多看它附帶的幫助文檔,你將獲益匪淺

以上文檔由 iSLee 編寫維護,最后更新日期:2009年3月6日

 


附,svn服務器配置:

1 下載服務器端
2 安裝服務器端
3 創(chuàng)建一個版本庫,命令:svnadmin create 新版本庫路徑
4 修改用戶名和口令。進入新版本庫所在目錄,
  找到conf目錄下的svnserve.conf,將其中  # password-db = passwd 的#去掉。
  找到conf目錄下的passwd文件,將其中# harry = harryssecret 和 # sally = sallyssecret 改成自己的用戶名和密碼。=前面是用戶名,=后面是密碼,用戶名前面不要有空格。
5 啟動SVN服務器
  方式一:命令行方式: svnserve.exe -d -r 版本庫路徑
  方式二:服務方式:sc create svnserve binpath= "SVN的BIN目錄\svnserve.exe --service --root 版本庫路徑" displayname= "Subversion" depend= tcpip start= auto
          如sc create svnserve binpath= "e:\svn\bin\svnserve.exe --service --root e:\svn\repos" displayname= "svn" depend= tcpip start= auto,注意:版本庫路徑后面不要帶\。
          其中sc命令不是windows自帶的,是微軟.net sdk中的一個工具。

  至此SVN服務器已經能運行,SVN服務器的訪問地址為 svn://服務器名或IP地址


 

示例:authz 文件

 

# 以[*/]標記的為項目路徑
# rw 表示讀寫
# r 表示只讀
# *= 禁止所有用戶訪問,*代表所有用戶,權限為空代表沒有任何權限
# 可以為一個目錄賦予多個組或多個用戶

# 定義repos儲存庫根目錄的訪問權限
[repos:/]
@axtic=rw #定義組axtic下面的用戶擁有讀寫權限
azheng=rw #定義用戶azheng有讀寫權限
10yue=rw #定義用戶10yue有讀寫權限
dougen=rw #定義用戶dougen有讀寫權限

#定義test儲存庫下test目錄的訪問權限
#[test:/test]
#user=r

#下面是用戶組的配置,左邊是組名,右邊是隸屬于改組的用戶,多個用戶以逗號(“,”)隔開。
#組名可以由字母數(shù)字下劃線構成
[groups]
axtic=azheng,10yue,dougen

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多