Apache+subversion配置

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

Apache+subversion配置过程。

一、工具准备

Apache Web服务器:httpd-2.0.61.tar.gz
Subversion
源码包及依赖包:subversion-1.4.3.tar.gz ,subversion-deps-1.4.3.tar.gz

都放到/home/project1下。

 

二,安装Apache

Apache的安装要记得打开dav模块和动态模块选项。安装安装命令如下:

tar –zxvf httpd-2.0.61.tar.gz

cd httpd-2.0.61

./configure –enable-dav –enable-so 

(这样是默认安装到/usr/local/apache2里面,和

./configure –-prefix=/usr/local/apache2 –enable-dav –enable-so 效果一样)

make

make install

 

三、安装Subversion

SVN的安装一定要注意:

1,svn依赖的APR的版本要正确。如果apache2.0.x,对应的APR版本应为0.9.xApache2.2.x,对应的APR版本应为1.2.x 由于subversion-deps包里的APR0.9.x的,因此编译svn时要删除从deps里解压出来的apr, apr-util,改而使用apache 2.2里提供的。

2,如果apache不是安装在默认路径,configure必須加上--with-apxs选项,如:./configure --with-apxs=/home/apache2/bin/apxs(你的apahce的安装路径里面的apxs,但最好还是 加上吧)。

 

安装命令:

tar –zxvf subversion-1.4.3.tar.gz

tar –zxvf subversion-deps-1.4.3.tar.gz

# subversion-deps的文件也会解压到subversion-1.4.3目录中

cd subversion-1.4.3

./configure –prefix=/usr/local/subversion –with-apxs=/home/apache2/bin/apxs

make

make install

(这边我的apache版本里的APRsubversion-deps包里的APR是一样的所以不要修改)

 

若使用apache2.2.x(例如httpd-2.2.4)安装命令如下:

tar –zxvf subversion-1.4.3.tar.gz
tar –zxvf  subversion-deps-1.4.3.tar.gz
# subversion-deps
的文件也会解压到subversion-1.4.3目录中
cd subversion-1.4.3
rm -rf apr
rm -rf apr-util
ln -s /home/tmp/httpd-2.2.4/srclib/apr apr
ln -s /home/tmp/httpd-2.2.4/srclib/apr-util apr-util
./configure –prefix=/usr/local/subversion –with-apxs=/home/apache2/bin/apxs

make

make install

 

安装完成后,查看是否存在文件$APACHE_HOME/modules/mod_dav_svn.so(默认 /usr/local/apache2/modules/mod_dav_svn.so)

 

四、在apache中配置svn

创建svn库:

cd /home/project1

svnadmin create project1  #建立仓库

svnadmin create project2  

chown nobody:nobody –R project1

chown nobody:nobody –R project1    #(修改访问权限,设为nobody(apache默认用户)可读写的,不同的apache版本的默认用户不一样,可去apache的配置文档httpd.conf里查看)

 

cd /home/project1

touch svn-access-file     #存储用户访问权限文档

touch svn-auth-file        #存储用户名,密码文档

 

 

vim /usr/local/apache2/conf/httpd.conf   #修改apache配置

查看是否导入SVN模块,若没导入加上

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

然后配置仓库(在末尾添加即可)

<Location /subversion>
    DAV svn
    SVNParentPath /home/project1

AuthzSVNAccessFile  /home/project1/svn-access-file
    AuthType Basic

AuthName "Subversion repository"
    AuthUserFile /home/project1/svn-auth-file
    Require valid-user
  
</Location>

说明:

我的目录结构/home/project1/project1(后面一个project1是仓库)
    a)
第一行:<Location /subversion>表示project1仓库位于/subversion虚拟目录下面(Location的作用有点类似Alias的作用)。当然你可以的目录,比如<Location /src>。那么这样配置一般您将可以通过浏览器http://localhost/subversion进行浏览(如果权限足够的话)

    b)
第二行:DAV svn表示dav启用svn支持。如果您想更详细了解dav是啥去baidu或者google一下,网上资料蛮多的。
    c)
第三行:SVNParentPath表示使用SVN方式 .SVN支持两种对项目的管理方式,一种是SVNParentPath,另一种是SVNPath。使用SVNParentPath这种方式添加一个新项目是不需要重启 apache的,而另一种方式则需要。对于一个实际使用的服务器来说,是否需要常常重启是一件很重要的事情了。
    d)
第四行:AuthzSVNAccessFile /home/project1/svn-access-file。表示用户权限文件是/home/project1/svn-access-file (权限文件的写法,我在后面再说)。文件可以位于任意其他位置。
    e)
第五至八行:这个是apache的配置,使用使用apache的用户文件作为身份验证,需且要求有效用户才可以访问。其实在配置文件注释中已经说明了怎么样使用 htpasswd进行用户管理的方式。在此需要注意的是第四行的配置与此处的配置,在svn-access-file权限文件中,只配置哪个用户是什么样的权限,而判断是否已经通过密码验证却是由apache的用户管理实现的。也就是说,比如我有一个用户qsg,那么判断这个用户的密码是否正确是由此处完成的,而判断此用户对哪些项目有什么样的权限则是由svn-access-file文件完成的。

 

修改svn-access-file文件

cd /home/project1

vim svn-access-file

添加下面(我有两个仓库):

[groups]

admin=king

team1=

team2=

[/]

*=r

@admin=rw

[project1:/]

@team1=rw

[project2:/]

@team2=rw

#权限分配说明
   [project1:/] //
这表示,仓库project1的根目录下的访问权限
   @team1= rw //project1
仓库team1用户组具有读和写权限,如果在前面加上@符号,则表示这是个群组权限设置
   bao = r //project1
仓库bao用户具有读权限
   [project2:/] //project2
仓库根目录下的访问权限

@team2=rw //project2仓库team2用户组具有读和写权限
   wooin = r //wooin
用户在test2仓库根目录下只有读权限
   bao = //bao
用户在 test2仓库根目录下无任何权限
   [/] //
这个表示在所有仓库的根目录下
   * = r //
这个表示对所有的用户都具有读权限

@admin=rw//这个表示对admin组具有读权限
   #[groups] //
这个表示群组设置(添加组成员)

admin=king

team1=developer1,developer2

team2=developer3,developer4

添加用户,密码。

htpasswd –c /home/project1/svn-auth-file king(第一次添加 -c是创建密码文件)

会提示输入密码,两次输入后就OK了。

(注意再次添加的时候用 htpasswd –m /home/project1/svn-auth-file otheruser

 

重启服务器;

/usr/local/apache2/bin/apachectl restart

(如果没错误,就大功告成了)

实验一下,

links http://localhost/subversion/project1

会提示输入用户名密码。

能进去就OK了。

如果发生连http://localhost/都上不了,看 你的防火墙设置,修改一下就OK

Linux CentOS 8 编译安装Apache Subversion 简单记录一下Linux CentOS 8下搭建SVN服务器的过程 阅读详情

相关推荐

SVN:自己搭建源代码的版本控制系统(服务端VISUALSVN+客户端TortoiseSVN安装和使用)模拟客户使用的过程(使用大全)

Apache Subversion 通常被缩写成 SVN,是一个开放源代码的版本控制系统,Subversion 在 2000 年由 CollabNet Inc 开发,现在发展成为 Apache 软件基金会的一个项目,同样是一个丰富的开发者和用户社区的一部分。SVN相对于的RCS、CVS,采用了分支管理系统,它的设计目标就是取代CVS。互联网上免费的版本控制服务多基于Subversion

2401_84046895的博客 2003

Apache-Subversion-1.14.0.zip

subversion命令行工具。配置方法 https://blog.csdn.net/sayyy/article/details/109027382

Linux环境下ApacheSubversion的集成安装与配置指南

mod_dav_svn模块是ApacheSubversion的桥梁,它实现了WebDAV协议(Web-based Distributed Authoring and Versioning),让Apache能够通过HTTP直接访问Subversion仓库。这意味着用户可以通过标准的WebDAV客户端进行版本控制操作,如检出、提交、分支和合并等。mod_dav_svn模块将Subversion仓库映射为一个远程文件系统,使得仓库的内容可以通过HTTP(S)进行访问。

weixin_42443533的博客 970

CentOS安装apachesubversion

/usr/sbin/httpd -k start # 因为是在容器里面,所以不能用systemctl start httpd.service ,也可以通过/usr/sbin/httpd -f /etc/httpd/conf/httpd.conf来启动。# vi /etc/httpd/conf.modules.d/10-subversion.conf # 只需要添加一个虚拟站点,并指定svn版本库/svn/repos,以及相应的本地用户文件passwd和权限文件authz。

xc_gxf的专栏 619

SVNApache Subversion

开放源代码的版本控制数据库 部分概念: repository(源代码库):源代码统一存放的地方; checkout(提取):没有源代码的时候,需要从repository checkout一份; commit(提交):修改了代码,需要从commit到repository; update(更新):得到了checkout的一份源代码,update一下可以和repository上的源代码同步,自己手上的代码会有最新的变更; 如果修改的是同一个文件的同一行,SVN会提示文件conflict冲突,需要手动确认; .

m0_52113402的博客 910

安装基于ApacheSubversion服务

1. 引言在所有的Subversion服务配置方式中,基于Apache的是最灵活的。虽然配置起来有一点点复杂,但是它提供了其它方式所没有的好处:WebDAV基于Apache配置Subversion服务器使用了被许多其它程序支持的WebDAV协议。举个例子,你可以在Windows的资源管理器中将这样的一个版本库挂载成一个“Webfolder”,然后像文件系统中的其它文件夹一样访问它。

zql2002的专栏 589

配置Subversion Apache TortoiseSVN

配置Subversion Apache TortoiseSVN 下载ApacheSubversion、TortoiseSVN我用的是:svn-win32-1.4.2.zipTortoiseSVN-1.4.1.7992-win32-svn-1.4.2.msiapache_2.0.59-win32-x86-no_ssl.msi1.安装apache...

weixin_30399155的博客 199

subversion+apache 配置

  注意:目前windows下的subversion只能跟Apache2.0.x配合,不能用于Apache2.2.x,除非你自己编译在所有的Subversion服务配置方式中,基于Apache的是最灵活的。虽然配置起来有一点点复杂,但是它提供了其它方式所没有的好处: WebDAV基于Apache配置Subversion服务器使用了被许多其它程序支持的WebDAV协议。举个例子,你可以在Wi...

java程序 328

配置Subversion Apache tomcat

Subversion服务与客户端安装[Linux版] 一、基本组件及版本: 1、基本软件:

Domando 3238

基于ApacheSubversion权限配置

      由于我搭建的Subversion服务是基于Apache的,所以配置Subversion的权限,实际上就是配置Apache相关服务的访问权限。      翻看了一下TortoiseSVN的手册,发现配置过程很简单。      首先,打开Apache所在目录,进入conf目录,打开httpd.conf。在httpd.conf文件里,确保以下行已经添加:       DAV

zoogar的专栏 1112

小探Subversion Server 之 Apache配置

 安装到ApacheSubversion作为CVS的次代作品,Kerl真的是煞费苦心啊。现在我们就来看看如何配置它到ApacheServer。Subversion本身有一个自带的小server就是bin下的cvsserve ,通过svn://XXXX进行访问。同时支持ssh配置。但是弱点就是这个server对于权限和用户管理很弱,对于大型项目,必须将他挂在ApacheServer这样的重磅萨巴上。

走向资深架构师的旅程 1090

Apache & Subversion配置

I. CentOS Apache配置详解 (http://xuebingnanmm.javaeye.com/blog/629810) II.Subversion on CentOS (http://wiki.centos.org/HowTos/Subversion#head-2afd8f61ccc6de4477fde9a4bcc84720b86c17a9) III. How to customize the path of svn repository? The URL of sv

Bo Yang's Blog 679

Apache+Subversion安装配置

以前笔记本硬盘坏了,上面的SVN等也没办法恢复了,不过幸亏还没啥重要的东西,用自己的一个mini-pc装了个linux,顺便温习、记录下安装配置SVN的过程~方便自己,也方便需要的童鞋 一、安装配置SVN 1. 安装Subversion yum install subversion y 安装成功,可以通过“svn --version”查看SVN的版本信息   2. 建立仓库 mk...

Y1986810913的专栏 343

apachesubversion for windows配置详解

今天费了好大的工夫配置apachesubversion,其中遇到许多状况,不过最后还是搞定了。1、环境与版本• Windows 2000 Server • Apache HTTP Server: Apache_2.0.63-win32-x86-no_ssl.msi • Subversion: Setup-Subversion-1.5.1.en-us.msi • TortoiseSVN: TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi2、安装apache  首先

caiqiling的专栏 909

基于 Apache服务Subversion安装与配置

源代码管理, 做为程序员来讲应该是经常使用的.在源代码管理中, 以Apache + Subversion的方式最为方便好用了. 对于这个安装配置, 其实很简单, 但如果是第一次搞, 可能还是会很郁闷的, 有些小细节需要掌握. 下面就以Windows2003上配置Apache + Subversion + TortoiseSVN来讲下如何配置. 一. 安装Apache 1. 在 http

vanseparis的专栏 3222

ApacheSubversion集成安装与配置

ApacheSubversion集成安装与配置 要准备的东西如下:1: http://httpd.apache.org/下载 apache_2.0.63-win32-x86-openssl-0.9.7m.msi 或 apache_2.0.63-win32-x86-no_ssl.msi2,http://subversion.tigris.org/servlets/ProjectDocume

熊晓杰 -- (暴熊 || kongbu0621 || kongbu0622) 的专栏 1310

安装配置SubversionApache

1.准备  apache_2.2.14-win32-x86-no_ssl.msi  Setup-Subversion-1.6.6.msi  TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi  SVNService.zip2.安装apache  双击开始安装:  NetDomain,Server Name根据自己的条件选择  Administrator's Em...

weixin_34075551的博客 149
下一篇: 【原创】subversion配置文档
kingcjj007
博客等级 码龄20年 2粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值