博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CentOS 6 编译安装subversion-1.8.10+Apache2.4
阅读量:6119 次
发布时间:2019-06-21

本文共 4355 字,大约阅读时间需要 14 分钟。

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

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、访问测试

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

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

你可能感兴趣的文章
软件研发:公司内部技术考试——答题方法
查看>>
数学思想方法-分布式计算-linux/unix技术基础(5)
查看>>
IOS学习资源收集--开发UI控件相关
查看>>
J2EE 第二阶段项目之编写代码(三)
查看>>
C#获取单个字符的拼音声母
查看>>
iOS使用ffmpeg播放rstp实时监控视频数据流
查看>>
Android url中文编码问题
查看>>
ExtJs之Ext.ElementLoader.load
查看>>
The Suspects 简单的并查集
查看>>
http://www.importnew.com/10937.html
查看>>
[javaSE] 集合框架(ArrayList,LinkedList,Vector)
查看>>
批量kill进程
查看>>
运维利器:万能的 strace
查看>>
[dts]DTS实例分析
查看>>
在JAVA中如何跳出当前的多重嵌套循环
查看>>
通用视图
查看>>
通过Http接口及SolrNet 两种方法基于Solr5.5.1 实现CURD
查看>>
ubuntu学习的简单笔记
查看>>
矩阵、向量求导法则
查看>>
JAVA在线基础教程!
查看>>