1. 程式人生 > >SVN 配置 http(s) 訪問

SVN 配置 http(s) 訪問

相關連結:

在CentOS 7 1804 中 安裝 Apache HTTP Server 並 配置 騰訊雲 SSL

在CentOS 7 1804 中 安裝 Apache HTTP Server 並 配置 阿里雲 SSL

在CentOS 7 1804 中 配置 Apache HTTP Server 將 http 自動跳轉之 https

在CentOS 1804 中安裝 Subversion(SVN)

在CentOS 1804中設定Subversion(SVN)開機自啟


  1. 前提:
    1. 配置httpd請閱讀本文前後的相關連結。
    2. 配置httpd的ssl請閱讀本文前後的相關連結。
    3. 配置httpd的http自動跳轉https請閱讀本文前後的相關連結。
    4. 配置svn請閱讀本文前後的相關連結。
  2. 檢視httpd版本:
    [[email protected] ~]# httpd -version
    Server version: Apache/2.4.6 (CentOS)
    Server built:   Jun 27 2018 13:48:59
    

     

  3. 檢視svn版本:
    [[email protected] ~]# svnserve --version
    svnserve, version 1.7.14 (r1542130)
       compiled Apr 11 2018, 02:40:28
    
    Copyright (C) 2013 The Apache Software Foundation.
    This software consists of contributions made by many people; see the NOTICE
    file for more information.
    Subversion is open source software, see http://subversion.apache.org/
    
    The following repository back-end (FS) modules are available:
    
    * fs_base : Module for working with a Berkeley DB repository.
    * fs_fs : Module for working with a plain file (FSFS) repository.
    
    Cyrus SASL authentication is available.
    

     

  4. 安裝mod_dav_svn:
    [[email protected] ~]# yum -y install mod_dav_svn
  5. 建立密碼:
    第一次使用(有 - c):
    [[email protected] conf]# htpasswd -c -m passwd.htpasswd xuxiaowei
    New password: 
    Re-type new password: 
    Adding password for user xuxiaowei
    新增使用者使用(無 - c):
    [[email protected] conf]# htpasswd -m passwd.htpasswd xuxiaowei2
    New password: 
    Re-type new password: 
    Adding password for user xuxiaowei2
    
    更新使用者密碼使用(無 - c):
    [[email protected] conf]# htpasswd -m passwd.htpasswd xuxiaowei
    New password: 
    Re-type new password: 
    Updating password for user xuxiaowei
  6. 建立/etc/httpd/conf.d/subversion.conf檔案(檔名無所謂,字尾名必須為.conf,/etc/httpd/conf/httpd.conf會讀取/etc/httpd/conf.d/*.conf檔案),並新增如下內容:
    <Location /CSDN>
            DAV svn
    
            # SVNPath 單SVN目錄
            # SVNParentPath SVN公共父目錄
            SVNPath /data/svn/CSDN
    
            # 使用SVNParentPath需要啟用SVNListParentPath
            SVNListParentPath on
    
            # 身份驗證的型別
            AuthType Basic
    
            # 是您為身份驗證域選擇的任意名稱。 
            # 提示輸入使用者名稱和密碼時,大多數瀏覽器會在對話方塊中顯示此名稱。
            AuthName "Authorization SVN"
    
            # 許可權策略 使用svn預設策略
            AuthzSVNAccessFile /data/svn/CSDN/conf/authz
    
            # 指定要使用的密碼檔案的位置 不適用原SVN密碼本
            AuthUserFile /data/svn/CSDN/conf/passwd.htpasswd
    
            Require valid-user
    </Location>
    
    上述subversion.conf為單SVN配置說明,多SVN配置說明在註釋中,多SVN註釋說明中的許可權策略要使用通配設定。
  7. 重啟httpd:
    [[email protected] conf.d]# systemctl restart httpd.service 
    
  8. svn的http(s)瀏覽器訪問如圖所示:
  9. svn的http(s) TortoiseSVN 訪問如圖所示:
  10. 特別說明:
    1. 許可權策略:svn協議和http(s)協議使用的相同,都是/data/svn/CSDN/conf/authz
    2. 使用者認證:
      1. svn協議使用的是原始svn密碼認證方式。
      2. http(s)協議使用的是htpasswd密碼認證方式。