linux下Apache+Svn环境搭建(五)
在搭建之前先准备好如下包,建议去apache官网去下载:http://httpd.apache.org/
apr-1.4.6.tar.gz
apr-util-1.4.1.tar.gz
httpd-2.2.16.tar.gz
openssl-1.0.0a.tar.gz
subversion-1.6.1.tar.gz
subversion-deps-1.6.1.tar.gz
neon-0.30.1.tar.gz
expat-2.1.1.tar.bz2
以上所有的压缩包下载下来之后,建议统一放在一个目录,例如我是放在:/home/svn_apachetool
搭建的流程是:先安装httpd,然后再安装subversion,然后再进行配置,具体按照如下步骤进行
一、安装apr-1.4.6.tar.gz
#tar -zvxf apr-1.4.6.tar.gz
#cd apr-1.4.6
#./configure --prefix=/usr/local/apr
#make && make install
二、安装apr-util-1.4.1.tar.gz
#tar -zvxf apr-util-1.4.1.tar.gz
#cd apr-util-1.4.1
#./configure --with-apr=/usr/local/apr/
#make && make install
三、安装httpd-2.2.16.tar.gz
#tar -zvxf httpd-2.2.16.tar.gz
#cd httpd-2.2.16
#./configure --prefix=/usr/local/apache --enable-dav --enable-so --enable-headers --enable-expires --enable-mods-shared=all --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config
#make && make install
安装好后启动apache服务:
# /usr/local/apache/bin/apachectl –k start
用浏览器查看http://localhost/,如果显示it works,说明apache已经配置成功了。
四、安装subversion-1.6.1
1. 首先安装openssl-1.0.0a.tar.gz
#tar -zxvf openssl-1.0.0a.tar.gz
#cd opennssl-1.0.01a
#./config --prefix=/usr/local/ssl
#./config -t
#make depend
#make && make install
2. 解压subversion-1.6.1.tar.gz和ssubversion-deps-1.6.1.tar.gz到同一个目录下。
#tar zxvf subversion-1.6.1.tar.gz
#tar zxvf subversion-deps-1.6.1.tar.gz
3. 替换subversion中的neon,并安装。
#tar -zxvf neon-0.30.1.tar.gz
#mv neon-0.30.1.tar.gz neon
#cd subversion-1.6.1
#rm -rf neon
#cp -r .../neon ./
#cd neon
#./configure
#make && make install
4. 删除subversion1.6.1中的apr和apr-util目录
#cd subversion-1.6.1
#rm -rf apr
#rm -rf apr-util
5. 编译和安装subversion1.6.1中的zlib
#cd ./subversion-1.6.1/zlib
#./configure
#make && make install
6. 安装expat-2.1.1.tar.bz2
#tar zxvf expat-2.1.1.tar.bz2
#cd expat-2.0.1
#./configure
#make && make install
7. 配置和编译subversion1.6.1
#./configure --prefix=/usr/local/svn --with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-openssl=/usr/local/ssl --with-zlib=/home/svn_apachetool/subversion-1.6.1/zlib/ --enable-maintianer-mode
#make && make install
8.建立和导入版本库
[root@localhost /]# cd /usr/local/subversion/bin/
[root@localhost bin]# mkdir /repo
[root@localhost bin]# ./svnadmin create --fs-type fsfs /repo/te
[root@localhost bin]# ls /repo/te/
//如果ls /repo/te/ 出现了下面的内容,就说明subversion安装成功了.
conf dav db format hooks locks README.txt
导入版本库
[root@localhost bin]# ./svn import /root/test/ file:///repo/te/ -m "initial import"
提交后的修订版为 1。
9.修改目录权限
[root@localhost bin]# cd /repo/te/
[root@localhost te]# chmod -R 777 *
10.修改Apache的配置文件
1).打开vim /usr/local/apache/conf/httpd.conf文件
2).修改httpd.conf文件,在文件的最后添加下面几行
<Location /svn>
DAV svn
SVNParentPath /repo
</Location>
3).保存退出
上面指定的是,SVN不需要权限,即任何匿名用户都可以访问、修改、提交
在实际使用当中,需要有权限控制才行,因此,配置文件需要如下详细配置:
进入cd /usr/local/apache/bin 目录,建立用户组和用户文件 当然也可以是在其它文件夹
建立用户组文件:
# touch authz
在authz文件中写入如下内容,下面代码说明用户组admin有lyd,zzq两个用户,admin组对[/]表示根目录具有读写权限 r代表读 w代表写:
[groups]
admin = lyd,zzq
[/]
@admin = rw
创建用户,这里的用户需要在上面的用户组里面,才能有相应的权限:
htpasswd -cm pwd.txt lyd 第一次创建,加上 -cm 参数,需要创建用户文件pwd.txt,当然你也可以用别名字或后缀名
htpasswd pwd.txt zzq 第二次创建,因为第一次已经创建了用户文件,所以只需要在用户文件中直接添加用户即可
修改apache/conf/httpd.conf文件,在最后添加下面代码,指定SVN的版本库位置及刚才创建的,权限需要使用的文件
<Location /svn>
DAV svn
SVNParentPath /repo/
AuthzSVNAccessFile /usr/local/apache/bin/authz
AuthType Basic
AuthName "Subversion.TOM"
AuthUserFile /usr/local/apache/bin/pwd.txt
Require valid-user
</Location>
11.重启apache服务.
[root@localhost bin]# cd /usr/local/apache/bin/
[root@localhost bin]# ./apachectl stop
[root@localhost bin]# ./apachectl start
或者直接 restart
起动SVN
/usr/local/subversion/bin/svnserve -d -r /repo
12.测试
在window下,检出项目,如下:

点击ok,输入用户名和密码,如果可以检出成功,到此搭建完毕
linux下Apache+Svn环境搭建(五)的更多相关文章
- Linux下的SVN服务器搭建
Linux下的SVN服务器搭建 鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此总 ...
- Linux下的SVN服务器搭建(转)
Linux下的SVN服务器搭建 鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此 ...
- Windows下的SVN环境搭建详解
前言:最近因为要和其他人合作开发项目,所以花时间搭建了SVN的环境. 因为是初次使用SVN,对于SVN的环境搭建很不熟悉,再加上网上的教程都介绍的比较粗略,导致前前后后重做了几次. 当然最终是搭建成功 ...
- Linux下的SVN服务器搭建
鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此总结 /******开始****** ...
- Linux下PHP+Nginx环境搭建
PHP+Nginx环境搭建 作者:王宇阳( Mirror )^_^ 参考文章: Nginx+PHP+MySQL安装参考 PHP源码安装经验 PHP源码环境搭建过程中常见问题 CentOS环 ...
- HDP2.0.6+hadoop2.2.0+eclipse(windows和linux下)调试环境搭建
花了好几天,搭建好windows和linux下连接HDP集群的调试环境,在此记录一下 hadoop2.2.0的版本比hadoop0.x和hadoop1.x结构变化很大,没有eclipse-hadoop ...
- Linux下安装python3环境搭建
Linux下python3环境搭建 Linux安装软件有哪些方式? rpm软件包 手动安装 拒绝此方式 需要手动解决依赖关系 yum自动化安装 自动处理依赖关系 非常好用 源代码编译安装,可自定义的功 ...
- Linux下Java开发环境搭建—CentOS下Eclipse的安装教程
据了解,在Linux下的Java开发很多时候都比较喜欢使用vim + 插件,反而很少使用Eclipse,但是我是第一次使用Linux来进行Java编程,就什么都体验下啦,好啦,废话不多说,直接开始啦. ...
- Linux下golang开发环境搭建
对于golang开发来说,Windows下可以用vscode或者liteide都不错,但是Linux下的开发也就只有vim了,所以怎么搞笑的利用vim进行golang开发呢? 参考官方推荐的一个插件: ...
随机推荐
- Beta冲刺(周五)
这个作业属于哪个课程 https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass1 这个作业要求在哪里 https://edu.cnblo ...
- 厌食?暴食?试试这个 VR 新疗法
今日导读 “我知道我要吃饭,但我真的什么都吃不下.” “我脑子里想的只有吃东西,吃吃吃!” ....... 作为一个正常人,我们完全无法想象患厌食症或贪食症人群所受的痛苦.长期的厌食,会使一个人瘦的只 ...
- kubernetes监控-Heapster+InfluxDB+Grafana(十五)
cAdvisor+InfluxDB+Grafana cAdvisor:是谷歌开源的一个容器监控工具,采集主机上容器相关的性能指标数据.比如CPU.内存.网络.文件系统等. Heapster是谷歌开源的 ...
- VC-基础:vs2010快捷键
F12: 转到所调用过程或变量的定义 CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O 打开文件 CTRL + SHIFT + O打开项目 CTRL + S ...
- 《队长说得队》【Alpha】Scrum meeting 2
项目 内容 这个作业属于哪个课程 >>2016级计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 >>实验十二 团队作业8:软件测试与ALPHA冲刺 团队名称 ...
- shell脚本,awk利用NF来计算文本显示的行数。
解释: 1.awk 'NF{a++;print a,$0;next}1' file4 首先判断NF是否存在值,第一行第二行第三行第四行都存在,进行执行后面的输出,输出后碰到next后,就结束了后面的操 ...
- OC和C++的区别
C++语言特点: 1.在C语言的基础上进行扩充和完善,使C++兼容了C语言的面向过程特点,又成为了一种面向对象的程序设计语言: 2.可以使用抽象数据类型进行基于对象的编程: 3.可以使用多继承.多态进 ...
- 使用TensorFlow的卷积神经网络识别手写数字(2)-训练篇
import numpy as np import tensorflow as tf import matplotlib import matplotlib.pyplot as plt import ...
- LeetCode(283)Move Zeroes
题目 Given an array nums, write a function to move all 0's to the end of it while maintaining the rela ...
- hdu 6318
Long long ago, there was an integer sequence a.Tonyfang think this sequence is messy, so he will cou ...