CentOS 6 编译安装subversion-1.8.10+Apache2.4

本文介绍在CentOS 6系统中使用系统自带的Apache 2.2和Subversion 1.6进行配置的方法,包括Apache配置、版本库创建及通过浏览器或客户端进行访问的过程。同时提供从源码编译安装Apache、SVN及相关依赖包的步骤。

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

只是记录下安装过程,方便下次直接拷贝,省的在去查找一些选项。

CentOS6安装完成后自带的有Apache2.2和subversion1.6,那我们就先来看系统自带的如何配置:

一、用系统自带的Apache和svn配置

1、添加svn用户

1
# useradd -r -s /sbin/nologin svn

2、配置Apache的配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# mkdir -pv /www/svnroot/                          # 为svn建立库目录
# chown -R svn.svn /www/svnroot/                   # 更改权限
# cd /etc/httpd/conf.d                             # 编辑配置文件
# vim subversion.conf
     LoadModule dav_svn_module     modules / mod_dav_svn.so
     LoadModule authz_svn_module   modules / mod_authz_svn.so
     <Location  / svn / >                 # 定义访问是的路径;例如http://IP/svn
        DAV svn     
        SVNParentPath  / www / svnroot           # SVN的库路径
        SVNListParentPath on                 # 允许列出目录
        AuthzSVNAccessFile  / www / svnroot / authz    # 认证文件
        #RedirectMatch ^(/svn)$ $1/               
           AuthType Basic         # 基本认证
           AuthName  "Subversion Auth"        # 认证提示信息
           AuthUserFile  / www / svnroot / password  # 认证密码文件
           Require valid - user          # 必须为有效的用户
     < / Location>
 
# service httpd start

3、创建版本库并测试:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# cd /www/svnroot
# svnadmin create platform
# chown -R svn.svn *
# cp platform/conf/authz .
# vim authz
     [aliases]
     # joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average
 
     [groups]                 # 定义组
     group_platform_admin  =  admin       # 组内成员
 
     [ / ]                  # 根目录所有用户的浏览权限
     *  =  r
 
     [platform: / ]                 # 每个版本库的对应权限
     @group_platform_admin  =  rw         # 权限
 
# htpasswd -c password admin            # 生成密码文件和添加用户
 
到此,就可以正常访问了。

此时可以在浏览器里输入地址访问,也可以是用客户端访问。


二、源码编译安装

1、解决依赖包

1
2
yum  - y install pcre - devel perl - ExtUtils - Embed perl perl - devel
yum  - y remove subversion


2、下载需要的源码包

1
2
3
4
5
6
7
apr - 1.5 . 1.tar .bz2
apr - util - 1.5 . 4.tar .bz2
httpd - 2.4 . 12.tar .gz
sqlite - autoconf - 3080802.zip
subversion - 1.8 . 10.tar .bz2
zlib - 1.2 . 8.tar .gz
expat - 2.0 . 1.tar .gz

3、编译

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
apr
. / configure  - - prefix = / usr / local / apr
make && make install
 
apr - util
. / configure  - - prefix = / usr / local / apr - util  - - with - apr = / usr / local / apr /
make && make install
 
httpd - 2.4 . 12
. / configure  - - prefix = / usr / local / apache  - - sysconfdir = / etc / httpd24  - - enable - so  - - enable - ssl  - - enable - cgi  - - enable - rewrite  - - with - zlib  - - with - pcre  - - with - apr = / usr / local / apr  - - with - apr - util = / usr / local / apr - util  - - enable - modules = most  - - enable - mpms - shared = all  - - with - mpm = event  - - enable - proxy  - - enable - proxy - fcgi  - - enable - dav  - - enable - dav - fs  - - enable - maintainer - mode
make && make install
# 编译完成后添加环境变量:
vim  / etc / profile.d / apache.sh
     export PATH = / usr / local / apache / bin / :$PATH
/ etc / profile.d / apache.sh      # 生效
 
expat
. / configure
make && make install
 
sqlite
. / configure  - - prefix = / usr / local / sqlite  - - enable - libtool - lock
make && make install
 
subversion
. / configure  - - prefix = / usr / local / svn  - - with - apr = / usr / local / apr /  - - with - apr - util = / usr / local / apr - util /  - - with - apxs = / usr / local / apache / bin / apxs  - - with - apache - libexecdir  - - with - sqlite = / usr / local / sqlite /  - - with - openssl  - - enable - maintainer - mode
make && make install
# 编译完成后添加环境变量:
vim  / etc / profile.d / svn.sh
     export PATH = / usr / local / svn / bin / :$PATH
/ etc / profile.d / svn.sh           #生效

以上编译过程请注意是否有报错,如果有报错,解决后在进行下一步的安装操作。


4、配置Apache

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# 在Apache编译完成后,由于系统自带的Apache是不需要卸载的,直接到/etc/init.d/目录下。
cd  / etc / init.d /
cp httpd{,.bak}   
vim httpd
     apachectl = / usr / local / apache / bin / apachectl
     httpd = ${HTTPD - / usr / local / apache / bin / httpd}
     prog = httpd
     pidfile = ${PIDFILE - / var / run / httpd / httpd.pid}
     lockfile = ${LOCKFILE - / var / lock / subsys / httpd}
# 把这个几个对应的路径改一改,pidfile在配置文件中要定义下路径,并把error log的路径也写全了,这样方便排错
 
# 然后在配置文件中添加如下行:
在LoadModule装载的路径后面添加下面两行:
LoadModule dav_svn_module     modules / mod_dav_svn.so
LoadModule authz_svn_module   modules / mod_authz_svn.so
 
# 注意:把启动的用户和组改成SVN使用的用户和组,否则没有写权限,或者把SVN的目录的属主属组更改为运行Apache的也行。
 
# 在其他位置添加如下:
<Location  / svn / >
     DAV svn
     SVNParentPath  / data / svn
     AuthzSVNAccessFile  / data / svn / authz
     #SVNListParentPath on
     AuthType Basic
     AuthName  "Subversion Auth"
     AuthUserFile  / data / svn / password
     Require valid - user
< / Location>
 
# service httpd restart

5、配置svn的库以及认证文件,如第一个配置是一样的。


6、访问测试

wKioL1TYWqiBo1xxAAD2pQqPPL8812.jpg

wKiom1TYWbbSm7KwAADtNnX5iVU623.jpg

测试如上。客户端访问也是一样的。



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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值