Linux svn http 訪問配置
阿新 • • 發佈:2019-02-01
svn的服務形式應該是有兩種:
1 通過svnserve建立的 通過svn://ip:port 埠預設是3690,這種形式;
2 通過apache httpd或者其他的web伺服器的擴充套件模組,進行svn管理
前提是:已裝好svn 和 apche
第一步:建立使用者和密碼認證檔案
輸入如下命令,命令格式
htpasswd [-cmdpsD] passwordfile username
htpasswd -cm /home/svn/conf/http_passwd lisi (若第一次建立使用者,我們必須使用引數“-c”來同時建立使用者密碼檔案)
htpasswd -m /home/svn/conf/http_passwd zhangsan (建立第二或之後的使用者時,一定不能用引數“ c ”,否則之前的使用者就會被刪除。)
根據提示輸入2次密碼即可設定。
注意:(不能用svn自己生成的passd檔案中的使用者和密碼,被坑了很久,只能用命令)
/home/svn/conf/目錄下面passwd檔案是svnserve獨立伺服器使用的認證檔案,密碼沒有加密,明文顯示。
/home/svn/conf/目錄下面http_passwd檔案是Apache的http模式使用的認證檔案,密碼使用MD5加密。
passwd和http_passwd檔案中,賬號密碼必須設定相同。
刪除使用者命令:
htpasswd -D passwd robert
第二步:設定Apache配置檔案
命令=> vi /etc/httpd/conf.d/subversion.conf
<Location /svn>
DAV svn
SVNParentPath /home/svn/repository/
AuthzSVNAccessFile /home/svn/conf/authz
AuthType Basic
AuthName "Subversion.zoneyump"
AuthUserFile /home/svn/conf/passwd
Require valid-user
</Location>
<Location /svn> DAV svn #SVNPath /home/svn SVNParentPath /home/svn # # Limit write permission to list of valid users. # <LimitExcept GET PROPFIND OPTIONS REPORT> # # Require SSL connection for password protection. # # SSLRequireSSL # AuthType Basic AuthName "Authorization SVN" AuthzSVNAccessFile /home/svn/conf/authz AuthUserFile /home/svn/conf/http_passwd Require valid-user # </LimitExcept> </Location>
第三步:設定目錄許可權
chown apache:apache /home/svn -R #設定svn目錄所有者為Apache服務執行賬號apache
第四步:重啟Apache服務
service httpd restart
最後就是訪問了!