前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS7:安装SVN+http访问

CentOS7:安装SVN+http访问

作者头像
章工运维
发布2023-05-24 14:39:15
4600
发布2023-05-24 14:39:15
举报
文章被收录于专栏:章工运维

# 1. 安装httpd

安装httpd服务:

代码语言:javascript
复制
$ sudo yum install httpd

检查httpd是否安装成功:

代码语言:javascript
复制
$ httpd -version
Server version: Apache/2.4.6 (CentOS)
Server built:   Jul 18 2016 15:30:14

# 2. 安装svnserve

安装svnserve服务:

代码语言:javascript
复制
$ sudo yum install subversion

检查svnserve是否安装成功:

代码语言:javascript
复制
$ svnserve --version
svnserve, version 1.7.14 (r1542130)
compiled Nov 20 2015, 19:25:09

# 3. 按住mod_dav_svn

mod_dav_svn是apache (opens new window)服务器访问svn的一个模块。通过yum安装:

代码语言:javascript
复制
$ sudo yum install mod_dav_svn

安装成功后,会有mod_dav_svn.so和mod_authz_svn.so两个文件。

代码语言:javascript
复制
$ sudo find / -name mod_dav_svn.so
/usr/lib64/httpd/modules/mod_dav_svn.so

$ sudo find / -name mod_authz_svn.so
/usr/lib64/httpd/modules/mod_authz_svn.so

# 4. 创建svn仓库

代码语言:javascript
复制
$ sudo mkdir /var/svn
$ sudo svnadmin create /var/svn/spring-hello-world

$ ll /var/svn/
drwxr-xr-x. 6 root root 80 Nov 10 14:42 spring-hello-world

$ ll /var/svn/Project/
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:

代码语言:javascript
复制
$ sudo chown -R apache:apache /var/svn/Project/

创建用户文件passwd:

代码语言:javascript
复制
$ sudo touch /var/svn/passwd  #创建用户文件

$ sudo htpasswd /var/svn/passwd admin  #创建用户admin
$ sudo htpasswd /var/svn/passwd guest  #创建用户guest

$ cat /var/svn/passwd 
admin:$apr1$UCkPzZ2x$tnDk2rgZoiaURPzO2e57t0
guest:$apr1$vX1RIUq6$OKS1bqKZSptzsPDYUOJ5x.

创建权限文件authz:

代码语言:javascript
复制
$ sudo cp /var/svn/Project/conf/authz /var/svn/authz

$ cat /var/svn/authz 
[/]
admin = rw
guest = r

# 6. 配置httpd

代码语言:javascript
复制
$ 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服务

代码语言:javascript
复制
$ sudo systemctl start httpd.service

客户端使用http://IP/svn/Project就可以访问刚才建立的svn仓库了。 如果返回403错误,可能是防火墙问题。增加防火墙规则:

代码语言:javascript
复制
$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https
$ sudo firewall-cmd --reload

原文链接 (opens new window)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-05-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • # 1. 安装httpd
  • # 2. 安装svnserve
  • # 3. 按住mod_dav_svn
  • # 4. 创建svn仓库
  • # 5. 配置权限
  • # 6. 配置httpd
  • # 7. 启动httpd服务
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档