CentOS SVN安装与配置 (RHEL5.4平台测试通过)

简介:

CentOS SVN安装与配置 RHEL5.4平台测试通过)

 

 

 

Yum install httpd httpd-devel subversion subversion-devel mod_dav_svn

mod_auth_mysql

第一步:安装apache subversion

yum install httpd

yum install httpd-devel //用于开发Apache模块

yum install subversion

yum install mod_dav_svn //SubversionApache之间的接口(通过它,Apache就可以访问版本库,可以让客户端也使用HTTP的扩展协议 WebDAV/DeltaV进行访问)

yum install mod_auth_mysql //这一项用于用户身份验证,在网上有资料说貌似这个mod_auth_mysql没得配置访问权限的只有用户设置,建议不装,用htpasswd就可以,在这里我没有装,我还是打算用htpasswd,可能下回会试试。

验证svn模块(mod_dav_svn)是否正确安装

ls /etc/httpd/modules | grep svn

系统提示:

mod_authz_svn.so

mod_dav_svn.so

验证安装:

svn --version

 

第二步:创建SVN库和项目

mkdir /home/svn //创建SVN

svnadmin create /home/svn/projcet //创建项目

第三步:添加组及组员权限

groupadd subversion //创建一个叫subversion的组为拥有仓库所在的目录

usermod -G subversion -a apache //将自己和Apache 用户加入组成员中

查看:more /etc/group | grep subversion

系统提示:subversion:x:500:apache

第四步:修改项目权限

 

chgrp -R subversion /home/svn/project

chmod R 777 /home/svn/project

 

这里最好根据自己的安全需求配置相应的权限,我这是试验环境所以直接给了777

 

第五步:配置httpd

编辑httpd.conf

vim /etc/httpd/conf/httpd.conf

查看有没有LoadModule dav_svn_module modules/mod_dav_svn.so这一行,如果没有就添加上为了使客户端能够通过Apache来访问SVN档案库,Apache需要加载 mod_dav_svn模块。如果Apache是按照与预设目 录安装的,mod_dav_svn 模块应该会安装在 Apache 安装位置 (默认路径是 /etc/httpd/)  modules 子目录内。同时在Apache的配置文件httpd.conf(默认路径为etc/httpd/conf/)中已经使用 LoadModule指令加载了该模块(如果没有,手动添加)注意这个指令必须出现在其它的 Subversion 相关指令之前。还要加载mod_authz_svn.so模块

例如:

LoadModule dav_svn_module modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

一般来说apache2都己正常加载了这两个模块

启动httpd

/etc/init.d/httpd start

打开浏览器查看是否能看到apache的页面(注意如果开了防火墙记得开放80端口)

第六步:配置SVN

编辑subversion.conf

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

按以下代码更改(栗红为修改的代码):

LoadModule dav_svn_module modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

 

<Location /svn>

DAV 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 Realm"

AuthzSVNAccessFile /home/svn/project/conf/authz

AuthUserFile /home/svn/passwd

Require valid-user

# </LimitExcept>

</Location>

 

针对不同用户给予不同权限:

 

# vim /home/svn/project/conf/authz 添加如下内容:

[groups]

g_vip = admin,vip01,vip02

g_manager = user01,user02,user03

g_developer = user04,user05,user06

g_Tester = user07,user08,user09

g_docs = user10

 

[/]

* = r

@g_manager = rw

@g_vip = rw

dangerman =

 

[/require_document]

@g_docs = rw

@g_manager = rw

* =

 

[/develope]

@g_developer = rw

@g_manager = rw

* =

 

[/test1]

@g_Tester = rw

* =

 

 

第七步:建立用户

# htpasswd -c /home/svn/passwd test //第一次添加用户使用参数“-c”以后再添加就不用了

系统提示:

New password: //输入新密码

Re-type new password: //确认密码

Adding password for user test

重启apache

通过web页面访问,弹出用户登录验证,访问成功 (注意开放防火墙的3690端口)

 

Trouble_shooting:

 

 

访问报错如下:

 

 

 

访问地址不正确,正确的地址为:

 

http://192.168.1.241/svn/stuff



    本文转自vcdog 51CTO博客,原文链接:http://blog.51cto.com/255361/837695,如需转载请自行联系原作者




相关文章
|
1月前
|
Linux 网络安全 数据安全/隐私保护
如何在 VM 虚拟机中安装 CentOS Linux 9 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 CentOS Linux 9 操作系统保姆级教程(附链接)
142 0
|
2月前
|
关系型数据库 MySQL Linux
centos7.0环境下安装MySql_8.0.12
centos7.0环境下安装MySql_8.0.12
|
1月前
|
存储 JavaScript Linux
Linux环境下安装nmp(Centos环境)保姆级教学 一步到位
Linux环境下安装nmp(Centos环境)保姆级教学 一步到位
|
2天前
|
关系型数据库 MySQL Linux
centos7安装mysql-带网盘安装包
centos7安装mysql-带网盘安装包
28 2
|
8天前
|
网络协议
centos8 网卡 Nmcli(是network的简写 Nmcli)配置网络
centos8 网卡 Nmcli(是network的简写 Nmcli)配置网络
11 0
|
8天前
|
关系型数据库 MySQL Linux
CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解
CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解
44 0
|
15天前
|
IDE Linux 开发工具
CentOS7.4+REDHAWK2.3.1安装教程——折腾篇
CentOS7.4+REDHAWK2.3.1安装教程——折腾篇
18 0
|
19天前
|
Linux Shell 开发工具
CentOS8中Docker安装及部署
CentOS8中Docker安装及部署
67 0
|
28天前
|
缓存 运维 Serverless
应用研发平台EMAS产品常见问题之测试检查更新没有反应如何解决
应用研发平台EMAS(Enterprise Mobile Application Service)是阿里云提供的一个全栈移动应用开发平台,集成了应用开发、测试、部署、监控和运营服务;本合集旨在总结EMAS产品在应用开发和运维过程中的常见问题及解决方案,助力开发者和企业高效解决技术难题,加速移动应用的上线和稳定运行。
|
1月前
|
Linux 网络安全 开发工具
利用pxe无人值守最小化安装centos7
利用pxe无人值守最小化安装centos7
16 0