CentOS SVN+Apache

CentOS SVN+Apache

第一步:安裝apache subversion
yum install httpd httpd-devel   subversion mod_dav_svn
驗正:ls /etc/httpd/modules | grep svn
驗證svn模塊(mod_dav_svn)是否正確安裝,如正確安裝,系統會提示:
mod_authz_svn.so
mod_dav_svn.so
版本:svn –version
第二步:創建SVN庫和項目
1:mkdir /svn (創建SVN庫)
2:svnadmin create /svn/pongo (創建項目)

第三步:添加組及組員權限
chown -R apache.apache /svn

第四步:修改項目權限
chmod –R 777 /svn/pongo

第五步:配置httpd
vim /etc/httpd/conf/httpd.conf 
首先,你要在改文本中尋找到LoadModule那塊代碼
增加如下模塊:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

(說明:第一條是爲了使客戶端能夠通過Apache來訪問SVN檔案庫,Apache需要家長mod_dav_svn模塊。如果Apache是按照與預設目錄安裝的,mod_dav_svn模塊應該會安裝在Apache安裝位置(默認路徑是/etc/httpd/)的modules子目錄內。同時在Apache的配置文件httpd.conf(默認路徑是etc/httpd/conf/)中已經使用LoadModules指令加載了該模塊,如果沒有,手動添加。
且這個指定必須出現在其他的Subversion相關指令之前。還要加載mod_authz_svn.so模塊)

一般來說apache2都已正常加載了這兩個模塊

service httpd start (驗下配置文件是否有語法錯誤)
第六步:配置SVN
vim /etc/httpd/conf.d/subversion.conf (編輯subversion.conf)
<Location /svn/>   #注意目錄路徑後要以“/”作爲結束
        DAV svn
        SVNListParentPath on
        SVNParentPath /svn
        AuthType basic
        AuthName "Authorization Realm"
AuthzSVNAccessFile /svn/pongo/conf/authz
        AuthUserFile    /tmp/passwd
        Require valid-user
</Location>

vim /svn/pongo/conf/authz(針對不同用戶給予不同權限)
[groups]
admin = user1,user2    #組名是自己隨便定義的,路系統組無關,是一個虛擬的。

[svn:/]
@admin = rw

第七步:建立用戶
htpasswd –c /svn/passwd xiaoming
htpasswd  /svn/passwd lihui

注:第一次添加用戶使用參數“-c”以後再添加就不同了
系統提示:
New password:
Re-type new password

第八步:重啓服務
service httpd restart (重啓apache)
service svnserve restart (啓動svn服務)
第八步:防火牆
iptables -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 3690 -j ACCEPT
iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
iptables -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
注:svn://10.0.1.188/pongo 使用的是tcp 3690端口
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章