CentOS7:安裝SVN+httpd訪問(解決老是登入不上,許可權不夠的問題)
阿新 • • 發佈:2018-11-13
1. 安裝svnserve
安裝svnserve服務:
$ sudo yum install subversion
2. 安裝httpd
安裝httpd服務:
$ sudo yum install httpd
3. 安裝mod_dav_svn
mod_dav_svn是apache伺服器訪問svn的一個模組。通過yum安裝:
$ sudo yum install mod_dav_svn
4. 建立svn倉庫
$ sudo mkdir /var/svn $ sudo svnadmin create /var/svn/you_projectName $ ll/var/svn/ drwxr-xr-x. 6 root root 80 Nov 10 14:42 you_projectName
$ ll /var/svn/you_projectName/ drwxr-xr-x. 2 root root 51 Nov 10 14:42 conf drwxr-sr-x. 6 root root 4096 Nov 10 14:42 db -r--r--r--. 1 root root 2 Nov 10 14:42 format drwxr-xr-x. 2 root root 4096 Nov 10 14:42 hooks drwxr-xr-x. 2 root root 39Nov 10 14:42 locks -rw-r--r--. 1 root root 229 Nov 10 14:42 README.txt
5. 配置許可權
修改svn倉庫的使用者組為apache:
$ sudo chown -R apache:apache /var/svn/you_projectName/
建立使用者檔案passwd:
$ sudo touch /var/svn/passwd #建立使用者檔案 $ sudo htpasswd /var/svn/passwd admin #建立使用者admin $ cat /var/svn/passwd admin:$apr1$UCkPzZ2x$tnDk2rgZoiaURPzO2e57t0
建立許可權檔案authz:
$ sudo cp /var/svn/Project/conf/authz /var/svn/authz $ cat /var/svn/authz [/] admin = rw
6. 配置httpd
$ sudo touch /etc/httpd/conf.d/subversion.conf $ cat /etc/httpd/conf.d/subversion.conf <Location /svn> DAV svn SVNParentPath /var/svn AuthType Basic AuthName "Authorization SVN" AuthzSVNAccessFile /var/svn/authz AuthUserFile /var/svn/passwd Require valid-user </Location>
7. 啟動httpd服務
$ sudo systemctl start httpd.service
*********************************前面為轉載,總結是自己寫的******************************************************
總結:
1.我遇到的問題是通過http老是登入不上,返回當前登入頁面,後臺日誌顯示,是密碼檔案不對。解決方式為密碼不支援明碼檔案得建立一個密碼檔案,然後增加賬號 htpasswd 建立密碼檔案所在位置 使用者名稱
2.這個修改後如果還遇到說 /var/svn/passwd密碼檔案讀取失敗,許可權不夠。試試這個命令:
chcon -R -h -t httpd_sys_content_t /var/svn/you_projectName
最後祝你在Centos7安裝SVN順利!!!