Linux+svn+http配置

Linux+svn+http配置

記錄在Linux上面安裝svn並且配置http訪問

解釋:
多庫配置/配置多庫:所有庫共用一套配置
單庫配置/配置單庫:不是代表只能建一個庫,而是說,每一個庫都是單獨一套配置

一、安裝svn
1、直接

yum install mod_dav_svn  -y

2、創建版本庫目錄(只是目錄,不是庫)

mkdir /var/svn/svnrepos

3、創建版本庫

svnadmin create /var/svn/svnrepos/xxx  (xxx爲版本庫名稱)

4、如果你服務器上已經有了Apache環境,那麼直接 ,如果沒有,在完成第二步安裝完之後再運行

 chown -R apache:apache /var/svn/svnrepos

在這裏插入圖片描述

5、修改配置文件
如果是配置單庫,直接去對應庫下面找到如下文件,新建庫默認有三個文件(authz,passwd,svnserve.conf):
在這裏插入圖片描述
如果是配置多庫,和單庫配置區別就是,配置文件的位置不同
操作:新建一個庫之後,複製這個庫的conf文件夾到版本庫目錄svnrepos下,
在這裏插入圖片描述

authz:儲存用戶名和權限
格式:
[路徑]
用戶=權限

如果是單庫配置:[/conf]
如果是多庫配置:[yyhsvn0409:/conf] 要指明庫
rw:讀寫 r:讀 w:寫 ,如果爲空,則代表沒有權限
在這裏插入圖片描述

passwd:儲存用戶名密碼,明文保存,只適用於svn://訪問,不適用於http訪問
格式爲:用戶名=密碼
在這裏插入圖片描述

svnserve.conf:配置文件
將如下四行的註釋去掉,並修改
在這裏插入圖片描述

如果需要開啓http訪問,則需要創建一個文件:httppasswd
運行:第一次是 -bc ,會自動幫你創建文件,但是第二次開始就不能有c,
否則會覆蓋以前的數據

htpasswd -b /var/svn/svnrepos/conf/httppasswd usr pwd

選項 說明
-b 使用批處理方式,直接從命令行獲取密碼,不提示用戶輸入
-c 創建密碼文件,如果文件存在,那麼內容被清空重寫
-n 將結果送到標準輸出
-m 使用MD5加密
-s 使用crypt()加密
-p 使用文本密碼
-D 從認證文件中刪除用戶記錄
在這裏插入圖片描述

二、安裝Apache httpd環境
1、如果沒有則安裝

yum install httpd -y

2、找到 /etc/httpd/conf.d
新增文件:svn.conf
在這裏插入圖片描述
多庫配置:

LoadModule dav_svn_module modules/mod_dav_svn.so 
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svnrepos>
    DAV svn
    SVNParentPath /var/svn/svnrepos
    AuthType Basic
    AuthName "Authorization Realm"
    AuthUserFile /var/svn/svnrepos/conf/httppasswd
    AuthzSVNAccessFile /var/svn/svnrepos/conf/authz
    Satisfy all
    Require valid-user
</Location>

在這裏插入圖片描述

單庫配置:

LoadModule dav_svn_module modules/mod_dav_svn.so 
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /yyh0409>
    DAV svn
    SVNPath /var/svn/svnrepos/yyh0409
    AuthType Basic
    AuthName "Authorization Realm"
    AuthUserFile /var/svn/svnrepos/yyh0409/conf/httppasswd
    AuthzSVNAccessFile /var/svn/svnrepos/yyh0409/conf/authz
    Satisfy all
    Require valid-user
</Location>

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章