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开发呢? 参考官方推荐的一个插件: ...
随机推荐
- openstack rocky kolla docker
https://docs.openstack.org/kolla-ansible/latest/user/quickstart.html
- selenium--iframe
前戏 很多人在用selenium定位页面元素的时候会遇到定位不到的问题,明明元素就在那儿,用firebug也可以看到,就是定位不到,这种情况很有可能是frame在搞鬼. 进入到iframe <h ...
- DROP OPERATOR CLASS - 删除一个操作符类
SYNOPSIS DROP OPERATOR CLASS name USING index_method [ CASCADE | RESTRICT ] DESCRIPTION 描述 DROP OPER ...
- JQuery EasyUI学习记录(一)
1.主页设计(JQuery EasyUI插件) 下载easyUI开发包: 将easyUI资源文件导入页面中: <link rel="stylesheet" type=&quo ...
- 对象、句柄、ID之间的区别
对象是C++的概念,C++的类对象 句柄是Windows SDK的概念,指向某种资源的一种“指针”(有时候底层不一定是指针) 资源ID在MFC里仅仅是一个宏,也就是个整数. 其实,句柄是控件在数据结构 ...
- 使用kickstart + pxe 部署无人值守安装
1.作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装. 常规的安装系统方法: 光盘安装系统:一个服务器DVD内置光驱百 ...
- python中文件操作的基本方法
在python中对一个文件进行操作,分为三大步:打开,操作,关闭 首先创建一个文件hello,里面内容为hello world 一.打开一个文件 1.#open(‘文件名或文件路径’,‘操作模式’,文 ...
- LeetCode(173) Binary Search Tree Iterator
题目 Implement an iterator over a binary search tree (BST). Your iterator will be initialized with the ...
- Linux学习-Linux 的开机流程分析
开机流程一览 系统开机的经过可以汇整成底下的流程的: 加载 BIOS 的硬件信息与进行自我测试,并依据设定取得第一个可开机的装置; 读取并执行第一个开机装置内 MBR 的 boot Loader (亦 ...
- selenium2中TestNG相关解释
testNg官网:http://testng.org/doc/documentation-main.html 新建testNG class的时候,同时也新建了一个TestNG.xml的文件. 此xml ...