2013-11-10 13:56:01
来 源
ITJS.CN
Apache
本文介绍Linux系统下subversion和Apache的安装配置,希望对于初学Apache服务器相关的朋友有帮助,更多Apache安装、配置、报错处理等资源请本站内搜索。

为网友介绍过Apache以及subversion,如何将subversion与apache结合在一起呢?51CTO为大家介绍一个在在Linux下subversion上完美安装apache配置的方法。

软件版本:subversion1.2.3 和apache-server 2.0.55

Linux下Subversion+apache服务器配置

一.安装服务器端

1.环境工具说明:

服务器linux环境;apache,httpd-2.0.58.tar.gz;subversion-1.3.1.tar.gz

2.安装apache

#tar zxvf httpd-2.0.58.tar.gz

#cd httpd-2.0.58

#./configure --enable-dav --enable-so --enable-maintainer-mode tips:一定要写—enable-dav,否则安装时候会漏掉需要的配置包

#make

#make install

此时会产生/usr/local/apache2目录

tips:此时运行apache,之后安装svn后可以自动加载模块。

运行apache,到apache2的bin目录下

#apachetl start

3.安装subversion

#tar zxvf subversion-1.1.1.tar.gz

#./configure --with-apxs=/usr/local/apache2/bin/apxs

#make

#make install

此时会自动在/usr/local/apache2/conf/httpd.conf添加

LoadModule dav_svn_module modules/mod_dav_svn.so

如果没有就手工添加。

4.检查

在服务器web上输入http://localhost看是否出现apache的测试页面,如果出现apache就是正常工作。

运行svnserver --version确认版本,如果正常则sub运行正常。

二.建立仓库

Subversion 的档案库是个中央仓储, 用来存放任意数量项目的受版本控管数据,建立方法很简单

#svnadmin create path/to/repos

举个例子:#svnadmin create /home/mysvn

三.整合apache和subversion

Subversion服务器有两种运行方式,一是可以作为Apache 2.0的一个模块,以WebDAV/DeltaV协议与外界连通;另外,也可使用Subversion 自带的小型服务器程序svnserve。

以http方式运行

在/usr/local/apache2/conf/httpd.conf中加入:

<Location /svn/repository>

DAV svn

SVNPath /home/mysvn

</Location>

在服务器的浏览器中输入网址: http://localhost/svn/repository/

这时候,你会看到reversion0的界面,说明仓库就已经可以工作了。

tips:此时如果不能看到,请小心检查以上几步,如果都正确,请检查自己的httpd.conf配置文件,其中检查apache调用svn的端口是否占用,因为linux自带的web服务占用的是80端口,而apache默认调用的也是80端口。

四.用户添加以及权限设置

1.用户添加:

因为subversion跟apache整合在一起,所以用户添加管理和权限设置都是apache的任务。

进入/urs/local/apaceh2/bin,添加用户

# ### 第一次: 以 -c 建立档案

# htpasswd -c /etc/svn-auth-file harry

New password: *****

Re-type new password: *****

Adding password for user harry

# htpasswd /etc/svn-auth-file sally

New password: *******

Re-type new password: *******

Adding password for user sally

#

2.用户权限添加

在/usr/local/apache2/conf/httpd.conf的加入:

<Location /svn/repository >

DAV svn

SVNPath /home/mycvs

AuthType Basic

AuthName "Subversion repository"

AuthUserFile /etc/svn-auth-file

Require valid-user

</Location>

重新启动 Apache后,如果有人要访问SVN服务器,系统会要求他输入用户名和密码。 只有输入Sally 或Harry的用户名和相应的密码,才可以对档案库进行修改和访问。

权限设置在svn-auth-file内

比如仓库rpo,其下有p1,p2两个目录,用户有a,b

#用户a,b只能对rpo目录下的目录进行read,没有权限write

[rpo:]

a = r

b = r

#用户a对p1有读写的功能,用户b只能读

[doc:/p1]

a = rw

b = r

tips:请注意用户会继承上级目录的权限。小心设置,不要相互冲突。

此时用户登录只需要输入正确的用户名和密码即可登录,如果不能访问,看以下说明:

tips:看你的用户是否有查看文件的权限,使用命令#chown –R apache.apache /path/to/file

3.用户组和用户组权限设置

用户组添加如下:

[groups]

Ppc = a, b, c

Symbian = d, e, f

用户组权限设置要在前面添加@标志,表示对组内所有成员权限一样

[doc:/]

@symbian = r

好了,到了这里应该服务器可以正常运作了。

声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。