Cent OS上配置Apache2 + SVN

本文详细介绍如何在CentOS系统上配置SVN服务器,并结合Apache实现版本控制。内容包括安装Apache和SVN、配置Apache、配置SVN及增加用户访问控制等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前一段时间由于服务器管理上的原因,一直把SVN放到我的PC上(7×24跑了好几个月),这几天终于配好了专用的SVN服务器。

服务器的操作系统是64位的CentOS,这里记录一下SVN在CentOS上配置过程,以下操作都是以root权限进行。

一、安装Apache和SVN

在安装之前可以检查一下是否在操作系统安装时已经安装了这些软件,如果没有可以使用下面的命令安装:

> yum install httpd

运行该命令时,会列出要安装的文件和依赖的包,输入y,回车即可。

> yum install mod_dav_svn subversion

如果已经安装过,会给出相应提示

SVN已经安装

二、配置Apache

首先使用service命令启动apache,

>service apache start

有时候会提示找不到service命令,可以使用/sbin/service 代替service。

然后,要将httpd配置可以随系统启动而启动的服务,

>setup

这是会出现一个系统配置的界面:

系统配置界面

从中选择System services,就会出现系统所有的服务列表,自动重启的服务前面是[*],表示选中。从列表中找到httpd,选中,然后OK保存即可。

选择httpd服务

三、配置SVN

在配置完了Apache后,就要将二者结合起来了。如下操作:

1. 新建一个仓库目录:

> cd /var/www

如果没有svn目录,新建一个

> mkdir svn

使用svnadmin创建一个代码库:

> svnadmin create repos

修改apache对repos的访问权限

> chown apache.apache -R repos

2. 修改subversion.conf配置文件

> cd /etc/httpd/conf.d

> vim subversion.conf

subversion.conf的详细内容:

#注释略去 LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so # # 注释略去 <Location /svn/repos> DAV svn SVNPath /var/www/svn/repos </Location>

重新启动httpd服务

>service httpd restart

这个配置的内容是最基本,没有指定认证方式,所以是可以匿名访问的,在访问时使用的路径是:http://host:port/svn/repos

四、完善SVN配置,增加用户控制

在实际使用过程中,我们并不希望代码库可以匿名任意访问,因此要增加用户访问控制。

1. 添加用户

>htpasswd -cm /etc/svn-auth-file tester

提示输入密码,确保两次输入一次,然后会提示添加用户密码成功。

2. 修改subversion.conf增加访问控制

>vim subversion.conf

修改后的Location部分:

<Location /svn/repos> DAV svn SVNPath /var/www/svn/repos AuthType Basic AuthName "Subversion repository" Require valid-user </Location>

重新启动httpd,这时再访问http://host:port/svn/repos,就会提示输入用户名和密码。

五、更多信息

1. 在上面的配置中通过SVNPath指定了一个代码仓库。但是在实际应用,往往是有多个仓库存放不同的项目代码,这时可以将SVNPath改为:

SVNParentPath /var/www/svn

2. 使用htpasswd添加用户时,认证文件svn-auth-file不存在时,使用:

htpasswd -cm /etc/svn-auth-file tester01

会创建一个的文件,并且添加tester01用户。而此后再增加用户,使用:

htpasswd /etc/svn-auth-file tester02

3. 新增加代码库后,一定修改文件夹权限,否者客户端会得到Permission Denied的提示。

4. 每次修改过配置文件以后,都要重新启动httpd服务。

5. 参考:

Installing subversion with apache on centos

httpd, the Apache HTTP server

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值