参考连接0:http://www.programering.com/a/MDMzYDMwATg.html
参考连接1:http://www.zsythink.net/archives/1318
0.系统信息
系统版本:CentOS7.3 x86_64
1.安装依赖包

yum -y groupinstall "Development tools"
yum -y install expat-devel pcre pcre-devel openssl-devel

2.1安装apr-1.6.3

mkdir /usr/svnpackage
cd /usr/svnpackage
wget https://mirrors.aliyun.com/apache/apr/apr-1.6.3.tar.gz
tar zxf apr-1.6..tar.gz
cd apr-1.6.
./configure --prefix=/usr/apr
make && make install

2.2安装apr-util-1.6.1

wget https://mirrors.aliyun.com/apache/apr/apr-util-1.6.1.tar.gz
tar zx apr-util-1.6..tar.gz
cd apr-util-1.6.
./configure --prefix=/usr/apr-util --with-apr=/usr/apr/bin/apr
make && make install

2.3安装zlib-1.2.11

wget http://www.zlib.net/zlib-1.2.11.tar.gz
tar zxf zlib-1.2..tar.gz
cd zlib-1.2.
./configure /*默认安装路径即可*/
make &&make install

2.4安装sqlite-autoconf-3210000

wget http://www.sqlite.com/2017/sqlite-autoconf-3210000.tar.gz
tar zxf sqlite-autoconf-.tar.gz
cd sqlite-autoconf-
./configure
make && make install

2.5安装openssl1.0.1u 

wget https://www.openssl.org/source/old/1.0.1/openssl-1.0.1u.tar.gz
wget https://www.openssl.org/source/old/1.0.2/openssl-1.0.2l.tar.gz
tar zxf openssl1..1u.tar.gz
cd openssl1..1u
./config --prefix=/usr/local/openssl -fPIC no-gost /*这里的参数一定要添加,不然后面编译http后会出现问题*/
make depend
make install

2.6安装scons-3.0.1

#编译安装
  wget https://nchc.dl.sourceforge.net/project/scons/scons/3.0.1/scons-3.0.1.tar.gz
  mkdir scons
  tar zxf scons-local-3.0..tar.gz -C /usr/svnpackage/scons
  cd scons
  python scons.py install
#rpm安装
  wget https://nchc.dl.sourceforge.net/project/scons/scons/3.0.0/scons-3.0.0-1.noarch.rpm
  rpm -ivh scons-3.0.-.noarch.rpm

2.7安装serf

wget https://mirrors.aliyun.com/apache/serf/serf-1.3.9.tar.bz2
tar jxf serf-1.3..tar.bz2
cd serf-1.3.
scons PREFIX=/usr/local/serlf APR=/usr/apr/bin/apr--config APU=/usr/apr-util/bin/apu--config OPENSSL=/usr/lcoal/openssl
/*巨坑:此处会提示报错 File "/usr/svnpackage/serf-1.3.9/SConstruct", line
print 'Warning: Used unknown variables:', ', '.join(unknown.keys())
SyntaxError: invalid syntax
这里可以把/usr/svnpackage/serf-1.3./SConstruct内的185,186行注释掉,然后在安装*/
scons install
#安装完成后,将serf的lib库追加到动态链接库
echo "/usr/local/serf/lib" >> /etc/ld.so.conf
ldconfig -v

2.8安装httpd-2.4.28

wget https://mirrors.aliyun.com/apache/httpd/httpd-2.4.28.tar.gz
tar zxf httpd-2.4..tar.gz
cd httpd-2.4.
./configure --prefix=/usr/local/apache2 --with-apr=/usr/apr/bin/apr--config --with-apr-util=/usr/apr-util/bin/apu--config --enable-so --enable-dav --enable-maintainer-mode --enable-rewrite --enable-ssl --with-ssl=/usr/local/openssl
make && make install
#设置http自启动
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
vim /etc/init.d/httpd
#在#!/bin/sh的下面加入
#chkconfig:
#设置httpd开机自启动
chkconfig httpd on
#检查确认,2345级别为on
chkconfig --list httpd
#添加环境变量
vim /etc/profile.d/svn_path
export HTTPD_HOME=/usr/local/apache2/bin
export PATH=$HTTPD_HOME:$PATH
#设置生效:
source /etc/profile

2.9安装subversion-1.9.7

wget https://mirrors.aliyun.com/apache/subversion/subversion-1.9.7.tar.gz
./configure --prefix=/usr/local/svn --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/apr/bin/apr--config --with-apr-util=/usr/apr-util/bin/apu--config --with-zlib --enable-maintainer-mode --with-serf=/usr/local/serf
make && make install
#设置环境变量
vim /etc/profile.d/svn_path
export SVN_HOME=/usr/local/svn/bin
export PATH=$SVN_HOME:$PATH
#退出,设置生效:
source /etc/profile
#如果在编译过程中提示缺少*.h文件,可以找到对应的文件,软连接到/usr/include中,如果缺少库文件,如提示usr/bin/ld: cannot find -lxxx,可以到对应的安装文件的lib下,使用ln -s命令软连接到/usr/lib64目录下。
# 安装完成查看版本信息:svnserve --version
#创建svn根目录:
mkdir /data
#启动svn:
svnserve -d -r /data

3.http与svn的关联
  3.1.拷贝关联所需模块

cp /usr/local/svn/libexec/mod_authz_svn.so /usr/local/apache2/modules/
cp /usr/local/svn/libexec/mod_dav_svn.so /usr/local/apache2/modules/

  3.2.设置location,在/usr/local/apache2/conf/httpd.conf末尾添加如下内容

#for svn
#加载整合SVN所需的模块
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
#设置对应的location,路径为/,
#设置SVNParentPath设置为svn的仓库总根目录,此处为/data,配合location /,可以直接浏览器中输入http:/IP/直接
访问至/data下的svn仓库目录
#AuthzSVNAccessFile设置SVN权限配置文件路径
#AuthUserFile设置svn用户名密码配置文件路径
<Location />
DAV svn
SVNParentPath /data
SVNListParentPath on
SVNAutoversioning on
SVNReposName "svn"
AuthzSVNAccessFile /data/authz.conf
AuthType Basic
AuthName "svn repo auth"
AuthUserFile /data/passwd.conf
Require valid-user
</Location>
#for svn

  3.3.配置daemon用户的访问权限

chown -R daemon /data
chown -R /data

  3.4.创建用户 

htpasswd -c /data/passwd.conf username  /*首次创建用户需添加-c选项来创建passwd.conf文件,后续不能再使用此选项*/

  3.5.配置权限控制文件

  vim /data/authz.conf

##################################################################
[groups]
#<groupname1>=<username1>,<username2>
admin=pengyang #[<versionLib>:projectName/directory]
#@<groupsname> = <authorities>
#<username> = <authorities> [/]
@admin = rw [test:/test1]
#指定用户xiaoming可以读写test仓库中test1目录的文件
pengyang = rw
xiaoming = rw ###################################################################

4.配置私钥证书

openssl genrsa  > /data/server.key
openssl req -new -key /data/server.key > /data/server.csr
Country Name=CN
State or Province Name=guangdong
Locality Name=shenzhen
Organization Name=hangsheng new engrgy
Common Name=svnserver
Email Address=<可省略>
A challenge password=<空,填写后启动httpd需输入密码>
An optionnal company name=可选公司名,不填
openssl req -x509 -days -key /data/server.key -in /data/server.csr > /data/server.crt
cp /data/server.key /usr/local/apache2/conf
cp /data/server.crt /usr/local/apache2/conf
#设置http的支持ssl
vim /usr/local/apache2/conf/httpd.conf
#去掉Include conf/extra/httpd-ssl.conf前的#号
#确定httpd-ssl.conf配置中的证书与私钥指定正确
vim /usr/local/apache2/conf/extra/httpd-ssl.conf
#存在以下两行:
SSLCertificateFile "/usr/local/apache2/conf/server.crt"
SSLCertificateKeyFile "/usr/local/apache2/conf/server.key"
#修改svn对应的location
vim /usr/local/apache2/conf/httpd.conf
#添加"SSLRequireSSL"至DAV svn的下一行
#重启http服务器

至此,SVN安装完成,如有错误之处还请各位指正,以免误导大家!

CentOS7编译安装SVN(subversion1.9.7)的更多相关文章

  1. CentOS7编译安装Nginx-1.8.1和编译参数

    CentOS7编译安装Nginx-1.8.1和编译参数 Web服务器Nginx    LNMP是一组众所周知的Web网站服务器架构环境,即由Linux+Nginx+MySQL+PHP(MySQL有时也 ...

  2. CentOS7下安装SVN服务端

    CentOS7下安装SVN服务 1. yum命令即可方便的完成安装# sudo yum install subversion 测试安装是否成功:# svnserve --version 更改svn的默 ...

  3. centos7编译安装MySQL5.7.9

    title: centos7编译安装MySQL5.7.9 date: 2016-05-12 16:20:17 tags: --- Centos7编译安装mysql5.7.9 mysql5.7有更好的性 ...

  4. centos7 编译安装新版LNMP环境

    centos7 编译安装新版LNMP环境 环境版本如下: 1.系统环境:Centos 7 x86_64 2.NGINX:nginx-1.11.3.tar.gz 3.数据库:mariadb-10.0.2 ...

  5. CentOS7编译安装httpd-2.4.41 php7.3

    CentOS7编译安装httpd-2.4.41 php7.3 安装参考环境: CentOS Linux release 7.5.1804 (Core) 一.安装依赖包 httpd安装的依赖包 # yu ...

  6. Centos7 编译安装PHP7

    Centos7 编译安装PHP7 编译安装的方式可以让组件等设置更加合理,但需要你对PHP的代码及各种配置非常的熟悉,以下为大致的安装流程,大家可以参考 1.下载编译工具 yum groupinsta ...

  7. CentOS7编译安装php7.1配置教程详解

    这篇文章主要介绍CentOS7编译安装php7.1的过程和配置详解,亲测 ,需要的朋友可以参考. 1.首先安装依赖包: yum install libxml2 libxml2-devel openss ...

  8. 编译安装SVN不结合apache

    前言:独立SVN服务器不结合APACHE安装使用,连接独立SVN服务器也不是用HTTP协议.这是比较快捷的SVN服务器配置方法. 一.下载工具 1.subversion-1.6.17.tar.gz 2 ...

  9. Linux环境源码编译安装SVN

    zhoulf 2015/2/28 原创 安装说明 安装环境:Red Hat Enterprise Linux 安装方式:源码安装 软件:apr-1.5.0.tar.gz.apr-iconv-1.2.1 ...

随机推荐

  1. 用c# 开发html5的尝试,试用bridge.net

    Javascript交叉编译方案很多了,工业级品质的也不是没有,但前两年我从事html5 3d引擎开发时,做过一圈评估,没有可用的. 作为一个c#爱好者,我自然是很希望能最大限度的利用c#的生产力,之 ...

  2. 03-Python入门学习-Python基础

    一.与用户交互 1.什么是与用户交互 程序等待用户输入一些数据,然后程序执行完毕后为用户反馈信息 2.为何程序要与用户交互 为了让计算机能够像人一样与用户的交互 3.如何用 在python3中:inp ...

  3. Anaconda基础(一)

    目录 Conda常见命令 环境管理 包管理 conda管理 小技巧 Conda常见命令 环境管理 创建环境 conda create -n 环境名 包列表 进入环境 source activate 环 ...

  4. 2017-2018 ACM-ICPC, NEERC, Moscow Subregional Contest

    A. Advertising Strategy 最优策略一定是第一天用$y$元,最后一天再用$x-y$元补满. 枚举所有可能的$y$,然后模拟即可,天数为$O(\log n)$级别. 时间复杂度$O( ...

  5. helm-chart5,模板和访问文件

    提供的一些声明和使用命名模板段的操作: define在模板中声明一个新的命名模板 template导入一个命名模板 block 声明了一种特殊的可填写模板区域 首先,模板名称是全局的.如果声明两个具有 ...

  6. python开发之virtualenv与virtualenvwrapper讲解

    在使用 Python 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的库的问题: 亦或者是在开发过程中不想让物理环境里充斥各种各样的库,引发未来的依赖灾难. 此时,我们需要对于不同的工程使用 ...

  7. [LeetCode] N-ary Tree Preorder Traversal N叉树的前序遍历

    Given an n-ary tree, return the preorder traversal of its nodes' values. For example, given a 3-ary  ...

  8. Sun SPARC Enterprise M5000 启动步骤

    1.串口线与笔记本连接(需在笔记本上安装串口线的驱动程序,usb口接笔记本,网线水晶头接M5000)2.接通电源.此时XSCF卡充电,自检,前面板XSCF等闪烁.3.登录超级终端,注意波特率要跟主机匹 ...

  9. 线段树合并+并查集 || BZOJ 2733: [HNOI2012]永无乡 || Luogu P3224 [HNOI2012]永无乡

    题面:P3224 [HNOI2012]永无乡 题解: 随便写写 代码: #include<cstdio> #include<cstring> #include<iostr ...

  10. Ubuntu-1604-LTS在虚拟机设置分辨率

    在虚拟机中安装ubuntu系统时,有时系统的界面并不同虚拟机展示的匹配,需要我们进行调整.不用那么多废话,直接看图: