CentOS7:安装SVN+httpd访问(解决老是登录不上,权限不够的问题)

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   39 Nov 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顺利!!!      


猜你喜欢

转载自blog.csdn.net/qq_31980421/article/details/80060004