CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN

一、安装Apache和PHP

由于iF.SVNAdmin使用php写的,因此我们需要安装php

  1. yum install httpd
  1. yum install php

二、安装SVN服务器(其中,mod_dav_svn是Apache服务器访问SVN的一个模块)

  1. yum install subversion mod_dav_svn

三、安装完成后可以通过如下命令查看是否安装成功

  1. httpd -version
  2. svnserve –version
  3. ls /etc/httpd/modules/ | grep svn

CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN四、在Apache下配置 SVN

  1. vim /etc/httpd/conf.d/subversion.conf

# 复制下面的配置,粘贴

  1. LoadModule dav_svn_module modules/mod_dav_svn.so
  2. LoadModule authz_svn_module modules/mod_authz_svn.so
  3. <Location /svn>
  4. DAV svn
  5. #svn的根目录
  6. SVNParentPath /var/www/svn
  7. #SSL访问权限
  8. #SSLRequireSSL
  9. #Basic认证方式
  10. AuthType Basic
  11. #认证时显示的信息
  12. AuthName “Authorization SVN”
  13. #用户文件&密码
  14. AuthUserFile /var/www/svnconfig/passwd
  15. #访问权限控制文件
  16. AuthzSVNAccessFile /var/www/svnconfig/authz
  17. #要求真实用户,不能匿名
  18. Require valid-user
  19. </Location>

保存退出!

五、创建SVN 仓库目录和权限信息目录

  1. mkdir /var/www/svn
  2. mkdir /var/www/svnconfig

六、创建SVN权限文件和密码文件

  1. touch /var/www/svnconfig/authz
  2. touch /var/www/svnconfig/passwd

七、安装iF.SVnAdmin

# 下载:svnadmin-1.6.2.zip文件(http://sourceforge.net/projects/ifsvnadmin/files/svnadmin-1.6.2.zip/download

  1. wget https://jaist.dl.sourceforge.net/project/ifsvnadmin/svnadmin-1.6.2.zip

# 解压:

  1. unzip svnadmin-1.6.2.zip

# 把解压后的文件 iF.SVNAdmin-stable-1.6.2 拷贝到 /var/www/html/svnadmin

  1. cp -r iF.SVNAdmin-stable-1.6.2/ /var/www/html/svnadmin

# 更改data目录的读写模式

  1. chmod -R 777 /var/www/html/svnadmin/data/

# 更改 /var/www/html/svnadmin/ 权属

  1. chown -R apache:apache /var/www/html/svnadmin/

# 更改 /var/www/svn 的读写模式

  1. chmod -R 777 /var/www/svn

# 更改下列两个文件的读写模式

  1. chmod 777 /var/www/svnconfig/authz
  2. chmod 777 /var/www/svnconfig/passwd

八、启动Apache服务

  1. systemctl start httpd

加入开机自启动

  1. systemctl enable httpd

如果开启了防火墙, 需要开启httpd访问权限

  1. firewall-cmd –permanent –add-service=http
  2. firewall-cmd –zone=public –add-port=80/tcp –permanent
  3. firewall-cmd –reload

通过查看文件/usr/lib/systemd/system/svnserve.service,了解到svnserve的配置文件是/etc/sysconfig/svnserve

修改/etc/sysconfig/svnserve

  1. vim /etc/sysconfig/svnserve
  1. OPTIONS=”-r /var/svn”     //修改成
  2. OPTIONS=”-r /var/www/svn”

启动后浏览器输入http://服务器地址:端口(92.168.18.6/svnadmin/ 后登录,报错

Error: Could not copy configuration file template. Require write permission (777) to “data” folder and all containing files.”

CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN

关闭SELinux后正常。

修改selinux的配置文件

  1. vim /etc/selinux/config
  1. 将 “SELINUX=enforcing” 修改为 “SELINUX=disabled”

登录后如下图,输入各个配置文件的路径后点击Test进行测试是否成功,全部成功后保存配置,单击Save configuration按钮

CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN

保存后,会在 /var/www/svnconfig/passwd 文件中自动生成默认用户名和密码,都是admin

CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN

再次访问:http://192.168.18.6/svnadmin/,输入刚生成的用户名和密码

登录后如下图,可以看到软件版本信息、代码仓库、用户、组、访问路径等

添加新的仓库

CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN

CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN

完成后则会在“代码仓库”中看到新创建的wwh仓库

CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN

新建用户

CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN

分配权限

CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN

客户端安装后按下图测试权限

CentOS7.6搭建SVN+Apache+iF.SVNAdmin实现web管理SVN

原创文章,作者:wwh,如若转载,请注明出处:https://www.wuwenhui.cn/4787.html

(1)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020-09-16 13:42
下一篇 2020-09-25 11:22

相关推荐

发表回复

登录后才能评论

联系我们

在线咨询:点击这里给我发消息

站长邮箱:admin@wuwenhui.cn
工作时间:周一至周五,8:30-17:30,节假日休息

微信
本站支持QQ一键注册登录,所有资源下载均在文章底部~