CentOS SVN安装与配置 (RHEL5.4平台测试通过)
Yum install httpd httpd-devel subversion subversion-devel mod_dav_svn
?mod_auth_mysql
第一步:安裝apache subversion
yum install httpd
yum install??httpd-devel????????//用于開(kāi)發(fā)Apache模塊
yum install??subversion
yum install??mod_dav_svn???//Subversion與Apache之間的接口(通過(guò)它,Apache就可以訪問(wèn)版本庫(kù),可以讓客戶(hù)端也使用HTTP的擴(kuò)展協(xié)議?WebDAV/DeltaV進(jìn)行訪問(wèn))
yum install??mod_auth_mysql???//這一項(xiàng)用于用戶(hù)身份驗(yàn)證,在網(wǎng)上有資料說(shuō)貌似這個(gè)mod_auth_mysql沒(méi)得配置訪問(wèn)權(quán)限的?只有用戶(hù)設(shè)置,建議不裝,用htpasswd就可以,在這里我沒(méi)有裝,我還是打算用htpasswd,可能下回會(huì)試試。
驗(yàn)證svn模塊(mod_dav_svn)是否正確安裝
ls /etc/httpd/modules | grep svn
系統(tǒng)提示:
mod_authz_svn.so
mod_dav_svn.so
驗(yàn)證安裝:
svn --version
?
第二步:創(chuàng)建SVN庫(kù)和項(xiàng)目
mkdir /home/svn??????????//創(chuàng)建SVN庫(kù)
svnadmin create /home/svn/projcet??????????//創(chuàng)建項(xiàng)目
第三步:添加組及組員權(quán)限
groupadd subversion?????//創(chuàng)建一個(gè)叫subversion的組為擁有倉(cāng)庫(kù)所在的目錄
usermod -G subversion -a apache???//將自己和Apache?用戶(hù)加入組成員中
查看:more /etc/group | grep subversion
系統(tǒng)提示:subversion:x:500:apache
第四步:修改項(xiàng)目權(quán)限
?
chgrp -R subversion /home/svn/project
chmod?-R 777 /home/svn/project
?
這里最好根據(jù)自己的安全需求配置相應(yīng)的權(quán)限,我這是試驗(yàn)環(huán)境所以直接給了777
?
第五步:配置httpd
編輯httpd.conf
vim /etc/httpd/conf/httpd.conf
查看有沒(méi)有LoadModule dav_svn_module modules/mod_dav_svn.so這一行,如果沒(méi)有就添加上為了使客戶(hù)端能夠通過(guò)Apache來(lái)訪問(wèn)SVN檔案庫(kù),Apache需要加載?mod_dav_svn模塊。如果Apache是按照與預(yù)設(shè)目?錄安裝的,mod_dav_svn?模塊應(yīng)該會(huì)安裝在?Apache?安裝位置?(默認(rèn)路徑是?/etc/httpd/)?的?modules?子目錄內(nèi)。同時(shí)在Apache的配置文件httpd.conf(默認(rèn)路徑為etc/httpd/conf/)中已經(jīng)使用?LoadModule指令加載了該模塊(如果沒(méi)有,手動(dòng)添加)注意這個(gè)指令必須出現(xiàn)在其它的?Subversion?相關(guān)指令之前。還要加載mod_authz_svn.so模塊
例如:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
一般來(lái)說(shuō)apache2都己正常加載了這兩個(gè)模塊
啟動(dòng)httpd
/etc/init.d/httpd start
打開(kāi)瀏覽器查看是否能看到apache的頁(yè)面(注意如果開(kāi)了防火墻記得開(kāi)放80端口)
第六步:配置SVN
編輯subversion.conf
vim /etc/httpd/conf.d/subversion.conf
按以下代碼更改(栗紅為修改的代碼):
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
?
<Location /svn>
DAV svn
SVNParentPath /home/svn
#
#???# Limit write permission to list of valid users.
#???<LimitExcept GET PROPFIND OPTIONS REPORT>
#??????# Require SSL connection for password protection.
#??????# SSLRequireSSL
#
AuthType Basic
AuthName "Authorization Realm"
AuthzSVNAccessFile /home/svn/project/conf/authz
AuthUserFile /home/svn/passwd
Require valid-user
#???</LimitExcept>
</Location>
?
針對(duì)不同用戶(hù)給予不同權(quán)限:
?
# vim??/home/svn/project/conf/authz??添加如下內(nèi)容:
[groups]
g_vip = admin,vip01,vip02
g_manager = user01,user02,user03
g_developer = user04,user05,user06
g_Tester = user07,user08,user09
g_docs = user10
?
[/]
* = r
@g_manager = rw
@g_vip = rw
dangerman =
?
[/require_document]
@g_docs = rw
@g_manager = rw
* =
?
[/develope]
@g_developer = rw
@g_manager = rw
* =
?
[/test1]
@g_Tester = rw
* =
?
?
第七步:建立用戶(hù)
# htpasswd -c /home/svn/passwd test?????????//第一次添加用戶(hù)使用參數(shù)“-c”以后再添加就不用了
系統(tǒng)提示:
New password:????????????????????????//輸入新密碼
Re-type new password:?????????//確認(rèn)密碼
Adding password for user test
重啟apache??????????????????????????????????
通過(guò)web頁(yè)面訪問(wèn),彈出用戶(hù)登錄驗(yàn)證,訪問(wèn)成功?(注意開(kāi)放防火墻的3690端口)
?
Trouble_shooting:
?
?
訪問(wèn)報(bào)錯(cuò)如下:
?
?
訪問(wèn)地址不正確,正確的地址為:
?
http://192.168.1.241/svn/stuff
總結(jié)
以上是生活随笔為你收集整理的CentOS SVN安装与配置 (RHEL5.4平台测试通过)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux 常见服务端口
- 下一篇: Eclipse 安装配置指南