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>