天天看點

redhat下svn+apache搭建

伺服器:redhat版本為6.4

1.安裝

yum install httpd -y 

yum install subversion -y 

yum install mod_dav_svn -y

2.svn倉庫

利用之前建立好的庫

見http://blog.csdn.net/tshangshi/article/details/47727919

3.apache相關配置(配置檔案/etc/httpd/conf/httpd.conf)

  3.1檢查svn是否與apache相容

  # vim /etc/httpd/conf/httpd.conf

  查找檔案中是否增加了

 LoadModule dav_svn_module     modules/mod_dav_svn.so

 LoadModule authz_svn_module   modules/mod_authz_svn.so

 兩行資訊,并且檢視/etc/httpd/modules 下是否有mod_dav_svn.so和mod_authz_svn.so 檔案

 若modules裡沒有則安裝有問題,要重新安裝

 若配置檔案裡沒有,則加上以上兩行

  3.2添加apache的svn支援子產品,在配置檔案最後添加

  <Location /svn>

  DAV svn

  SVNPath /home/svn/repository/test

  AuthType Basic  #連接配接類型設定 基本驗證

  AuthName "welcome to svn"

  AuthUserFile /home/svn/repository/passwd

  AuthzSVNAccessFile /home/svn/repository/test/conf/authz

  Require valid-user   #"Require valid-user"告訴apache在authfile中所有的使用者都可以通路。如果沒有它,則隻能第一個使用者可以通路建立庫

  </Location>

 ps:

SVNParentPath:支援多個具備相同父目錄的Subversion版本庫。

SVNPath:隻支援一個父目錄的Subversion版本庫

SVNParentPath:svn庫的根目錄

SVNPath:svn庫的具體路徑

4.設定控制使用者和密碼

htpasswd -cm /home/svn/repository/passwd svn

htpasswd -m /home/svn/repository/passwd test

5.設定對應使用者的權限

 利用了之前的權限控制檔案/home/svn/repository/test/conf/authz

 也可以另外進行配置,但路徑必須和/etc/httpd/conf/httpd.conf裡的 AuthzSVNAccessFile配置保持一緻。

6.啟動服務

6.1 啟動svn服務

svnserve -d -r /home/svn/

6.2 apache服務重新開機

server httpd restart

6.3 apache服務開機自啟動

chkconfig httpd on

7.檢查防火牆

iptables -F (清空)

iptables -L (顯示内容)

getenforce (檢視selinux狀态)

setenforce 0 (把selinux狀态臨時設定為Permissive)

ps:如果為Enforcing,可能導緻一直彈出輸入密碼,無法正常進入并顯示結果

8.驗證

在浏覽器裡輸入127.0.0.1/svn,彈出驗證框

redhat下svn+apache搭建

輸入對應使用者名、密碼後正常顯示則配置成功

redhat下svn+apache搭建