使用者工具

網站工具


linux:sub:sub1

安裝Apache webserver及Subversion

本文的LAB是在Centos版本下進行。

  1. 簡易安裝Apache Web Server(httpd)
    • #yum install httpd httpd-tools
  2. Subversion
    • #yum install mod_dav_svn subversion

簡單設定,先讓web server可以執行

  1. 若有設定防火牆先打開80 Port(假設來源網段為 192.168.0.0/24)
    • #iptables -I INPUT -i eth0 -s 192.168.0.0/24 -p tcp --dport 80 -j ACCEPT
  2. 啟動web server
    • #/etc/init.d/httpd start
  3. 測試網頁(假設本機的IP為192.168.0.35 )
    • 在Brower的url打上 http://192.168.0.35 ,有顯示Apache基本訊息就可。

Subversion設定

  • 設定檔/etc/httpd/conf.d/subversion.conf說明
1
LoadModule dav_svn_module     modules/mod_dav_svn.so ##svn模組載入##
LoadModule authz_svn_module   modules/mod_authz_svn.so ##svn 驗證模組載入##
 
<Location /svn>
   DAV svn   ##DAV服務提供者##
      SVNParentPath /var/www/svn/  ##設定svn服務的根目錄##
      Satisfy Any   ##匿名存取。不必密碼驗證##
      AuthType Basic   ##基本驗證##
      AuthName "SVN TEST" ##詢問名稱和密碼的彈出窗口裡顯示的名稱##
      AuthUserFile /etc/svn-auth-conf  ##使用者帳號及密碼##
      AuthzSVNAccessFile /etc/svn_AUTHZ  ##使用者對專案目錄存取權限##
      Require valid-user    #Require 後面接著使用者名稱。Ex:Require user1,user2 。valid-user表對任何使用者的請求#      
 
</Location>

* 建立svn存放repository的目錄

#mkdir /var/www/svn
#chown root:apache /var/www/svn/
#svnadmin create  /var/www/svn/repos
#cd /var/www/svn/
#chown -R apache:apache repos/

以匿名方式登入

  1. 修改/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 /var/www/svn/
            Satisfy Any 
      </Location>
  2. 重新httpd reload
    • #/etc/init.d/httpd reload
  3. 以文字命令列測試
    • #svn co http://192.168.0.35/svn/repos   
       Checked out revision 1.
  4. 以瀏覽器測試
    • 在網址區塊,打上http://192.168.0.35/svn/repos

以驗證使用者帳密方式登入

  1. 修改/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 /var/www/svn/
            AuthType Basic
            AuthName "SVN TEST"
            AuthUserFile /etc/svn-auth-conf   ------\
                                                     \#以下針對/etc/svn-auth-conf及/etc/svn_AUTHZ這兩個設定檔做設定
                                                     /  
            AuthzSVNAccessFile /etc/svn_AUTHZ ------/
            Require valid-user
      </Location>
  2. 針對/etc/svn-auth-conf(設定使用者帳號及密碼,假設user:andy,password:123456)
    • #htpasswd -cm /etc/svn-auth-conf andy
    • New password: 輸入密碼
    • -c:表示 沒有這個/etc/svn-auth-conf檔案,並創建它。-m表示以md5來加密
  3. 創建檔案及修改/etc/svn_AUTHZ
    • [groups]
      tester = andy,ali,jobs #以tester群組名稱中有ali,andy,jobs等使用者
      
      [repos:/]
      andy = rw  #andy有 讀寫
      @tester = rw #test群組有 讀寫 
      * = r  #其他使用者只能 讀
      
  4. reload httpd,並測試匯入一個新專案名為New_Project1(位於/tmp/New_Project1)
    • #/etc/init.d/httpd reload
    • #svn import  /tmp/New_Project1  http://192.168.0.35/svn/repos/New_Project1
    • New password: 輸入密碼
    • ##就會顯示匯入資訊 file1..file2..表示成功

參考資料

linux/sub/sub1.txt · 上一次變更: 2013/07/06 01:28 (外部編輯)