源码搭建SVN+Apache+Setpass
tar xf httpd-2.2.18.tar.bz2
cd httpd-2.2.18
./configure --prefix=/yc/usr/local/apache2 --enable-so \
--enable-dav --enable-dav-fs --enable-maintainer-mode \
--with-included-apr --enable-rewrite --enable-ssl --enable-proxy \
--enable-proxy-http
-----------------------------------------------------------------
注释:
--enable-so 开启动态库支持,svn要求apache必须启用so
--enable-dav --enable-dav-fs 是支持svn认证使用的
--enable-maintainer-mode 开启调试模式
--with-included-apr 使用内置的apr
--enable-rewrite 开启rewrite
--enable-ssl 开启SSL
--enable-proxy 开启proxy支持
--enable-proxy-http 开启proxy http支持
-----------------------------------------------------------------
make && make install
创建用户
useradd -M apache
修改httpd.conf
#vim /yc/usr/local/apache2/conf/httpd.conf
User apache
Group apache
添加启动脚本
cp /yc/usr/local/apache2/bin/apachectl /etc/init.d/httpd
sed -i '2a# chkconfig: 35 85 40' /etc/init.d/httpd
sed -i '3a# description: this is http server - httpd-2.2.18.tar.gz' /etc/init.d/httpd
chkconfig --add httpd
2.安装配置php5.5.26
tar xf php-5.5.26.tar.gz
cd php-5.5.26
./configure --prefix=/yc/usr/local/php-5.5.26 --with-config-file-path=/yc/usr/local/php-5.5.26/etc \
--with-apxs2=/yc/usr/local/apache2/bin/apxs --enable-mbstring --with-bz2 --with-zlib --with-curl \
--enable-ftp --enable-bcmath --enable-calendar --enable-sockets --disable-ipv6 --enable-dom \
--enable-xml --enable-fpm --with-libdir=lib64 --with-mysql=mysqlnd --with-gd --enable-gd-native-ttf \
--with-png-dir=/yc/usr/local --with-jpeg-dir=/yc/usr/local --with-freetype-dir=/yc/usr/local \
--with-iconv-dir=/yc/usr/local --with-gettext --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd \
--with-libxml-dir=/yc/usr/local
make && make install
3.安装配置subversion
wget http://subversion.tigris.org/downloads/subversion-1.6.13.tar.bz2
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.13.tar.bz2
----------------------------------------------------------------------------------------------------
注释:
subversion-deps-1.6.13.tar.bz2是subversion的依赖包,解压后会自动放在先解压的subversion-1.6.13目录中;
----------------------------------------------------------------------------------------------------
tar xf subversion-1.6.13.tar.bz2
tar xf subversion-deps-1.6.13.tar.bz2
cd subversion-1.6.13
./configure --prefix=/yc/usr/local/subversion --with-apxs=/yc/usr/local/apache2/bin/apxs \
--with-apr=/yc/usr/local/apache2/bin/apr-1-config --with-apr-util=/yc/usr/local/apache2/bin/apu-1-config
make && make install
--------------------------------------------------------------
注释:
make报错如下:
make[1]: *** [test/serf_get] 错误 1
make[1]: Leaving directory /root/build/subversion-1.6.11/serf
make: *** [external-all] 错误 1
解决办法:
yum -y install expat-devel
---------------------------------------------------------------
配置环境变量subversion
#vim /etc/profile.d/subversion.sh
SVN_HOME=/yc/usr/local/subversion
export PATH=$SVN_HOME/bin:$PATH
source /yc/usr/local/subversion
4.整合apache+subversion
查看/yc/usr/local/apache2/modules目下是否存在以下两个模块:
mod_dav_svn.so
mod_authz_svn.so
编辑httpd.conf文件
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
Include conf/extra/httpd-svn.conf
编辑httpd-svn.conf文件
[root@svn svn]#vim /yc/usr/local/apache2/conf/extra/httpd-svn.conf
<Location /svn>
DAV svn
SVNListParentPath On
SVNParentPath /yc/svn
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /yc/svn/conf/pwd.conf
AuthzSVNAccessFile /yc/svn/conf/authz.conf
Require valid-user
</Location>
5.配置版本库
#mkdir -pv /yc/svn/{ops,devps}
#svnadmin create /yc/svn/ops/ --运维安全版本库目录
#svnadmin create /yc/svn/devps/ --开发版本库目录
#chown -R apache.apache /yc/svn/ops
#chown -R apache.apache /yc/svn/devps
[root@svn ~]# grep -Ev '^#|^$' /yc/svn/ops/conf/svnserve.conf
[general]
anon-access = none
password-db = /yc/svn/conf/pwd.conf
authz-db = /yc/svn/conf/authz.conf
realm = Ops Repository
[root@svn ~]# grep -Ev '^#|^$' /yc/svn/devps/conf/svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = /yc/svn/conf/pwd.conf
authz-db = /yc/svn/conf/authz.conf
realm = Devps Repository
-------------------------------------
注释:
使用统一用户密码文件和权限分配文件
-------------------------------------
生成用户密码文件pwd.conf
htpasswd -cm /yc/svn/conf/pwd.conf admin --第一次需要-c选项,-m使用md5加密
[root@svn ~]# cat /yc/svn/conf/pwd.conf
admin:$apr1$EbKVwuNC$5mkRimnpTi7sZrC6piw2m.
fangty:$apr1$zJGXhFS9$XMl1J4VC/NZuYxUmW0Y701
handetian:$apr1$o4tkLr8k$G7L8qPTF2dIihQPIICUlJ0
weigenhui:$apr1$CWGKhUQ6$Pl4s9iuqeSsvMm33C4rZt/
fengyong:$apr1$qEv5ECgA$Pw7H2IGxqzPN9Poke2wEQ1
qiumingchun:$apr1$AOwewnHP$TD5qkYmlhN03oKL.snWDg1
mouzunkui:$apr1$ueV/0iZF$Llmd9/mg4Y7KuB.9tGnk8.
liyuan:$apr1$y3cMvWiF$TvMqUBM4mdmlkef08uRzx/
jijuntao:$apr1$McKZiG94$Zhbc4HzQJWohvXFqLTgjS/
zhangyang:$apr1$DnOkBnWh$FX7vty6ILU35yT0P.l5q.0
renfufei:$apr1$fvBGY2fF$bcTS9bjrFZaABunZhNYLB1
配置权限分配文件authz.conf
[root@svn ~]# cat /yc/svn/conf/authz.conf
[groups]
sysusers = admin
ops = fangtianying,weigenhui,handetian,qiumingchun,fengyong,mouzunkui,liyuan,jijuntao,zhangyang
devps = renfufei
[/]
@sysusers = rw
[ops:/]
@ops=rw
[devps:/]
@devps = rw
启动服务
svnserve -d -r /yc/svn/
6.使用php页面实现SVN用户修改密码
修改httpd-svn.conf文件,添加如下内容
#vim /yc/usr/local/apache2/conf/extra/httpd-svn.conf
Alias /svntools "/yc/usr/local/apache2/htdocs/setpass"
<Directory "/yc/usr/local/apache2/htdocs/setpass">
Require valid-user
AuthType Basic
AuthName "SVN set passwd"
AuthUserFile "/yc/svn/conf/pwd.conf"
</Directory>
用户访问http://10.11.100.209/setpass修改用户密码
wget http://pan.baidu.com/s/1kTs5RhX
源码搭建SVN+Apache+Setpass的更多相关文章
- 源码搭建LNMP
源码安装LNMP 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 欢迎加入:高级运维工程师之路 598432640 前言:非常简单的一个平台LNMP,在生产实际环 ...
- 利用shell脚本去备份幸运28源码搭建下载所指定的数据库
#! /bin/bash幸运28源码搭建下载Q[115288oo99]logintool=/home/yx/server/mysql/mysql/bin/mysqldumptool=/home/yx/ ...
- Linux源码包安装apache(httpd)
我这里实验是用的CentOS7 #事先先检查一下自己的linux是否安装apache [root@localhost ~]#rpm –q httpd #如果已安装则先卸载原来的apache [root ...
- ARL(资产侦察灯塔系统)-源码搭建
freebuf能力中心开源了一套资产扫描系统(https://github.com/TophantTechnology/ARL),提供docker版,但并无源码搭建的文档(无完整文档).于是在星光哥及 ...
- 直播平台源码搭建教程:微信小程序中的直播如何去掉水印
直播平台源码搭建教程:微信小程序中的直播如何去掉水印 本文与大家分享一下直播平台源码搭建教程,如何去掉直播视频的水印 var services = require('../../lib/service ...
- CentOS 6.5 下源码搭建LAMP环境
参考网站: http://wenku.baidu.com/link?url=Cvkqss2E9mnxXOZigMWPaCfqwsBxnm0sZ4aKE2oLAgQ888XxeC0DWOChxVqiHz ...
- 源码安装svn 1.8.9
2014年5月25日 12:26:14 需要文件: svn apr apr-util sqlite3 serf svn : http://subversion.apache.org/download/ ...
- CentOS 源码安装svn
一. 下载依赖包 1. apr源码包 http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.5.2.tar.gz 2. apr-util源码包 h ...
- PHP直播平台源码搭建教程
直播源码市场火爆,但是PHP直播平台源码的搭建过程较为复杂,本文就简单为大家概述一下直播的实现过程以及PHP直播平台源码是如何搭建的. 一.直播的定义 如今PHP直播平台源码绝大部分情况下是指在现场架 ...
随机推荐
- IM客户端Socks 5代理协议应用
之前编写的一个基于openfire服务器的即时通讯软件,因为部署环境需要,需要增加代理登录通信的实现.整理了一下相关代理的知识分享一下. 一个基于TCP协议的客户端希望与一个只能通过特定网络节点才可以 ...
- OpenCV学习笔记——图像的腐蚀与膨胀
顺便又复习了一下cvcopy如何进行图像拼接(最近觉得打开多幅图像分别看不如缩小掉放拼接到一幅图像上对比来的好) 首先把拼接的目标图像设置兴趣区域ROI,比如我有一个total,要把a.b.c分别从左 ...
- 【转】区别和认识.Net四个判等函数
原文地址:不详 .Net有四个判等函数?不少人看到这个标题,会对此感到怀疑.事实上确是如此,.Net提供了ReferenceEquals.静态Equals,具体类型的Equals以及==操作符这四个判 ...
- Open vSwitch流表应用实战
本文参考:Open vSwitch流表应用实战 一个通过改变流表下发而实现的互相通信实验. 实验目的: 掌握Open vSwitch下发流表操作: 掌握添加.删除流表命令以及设备通信的原理. 原理:. ...
- Web 在线文件管理器学习笔记与总结(2)显示文件列表(名称,类型,大小,可读,可写,可执行,创建时间,修改时间,访问时间)
主要函数: filetype() 判断文件类型 filesize() 得到文件大小(字节) is_readable() 判断文件是否可读 is_writeable() 判断文件是否可写 is_exec ...
- Linux PHP增加JSON支持及如何使用JSON
Linux PHP增加JSON支持及如何使用JSON 目前,JSON已经成为最流行的数据交换格式之一,各大网站的API几乎都支持它. JSON(JavaScript Object Notation) ...
- Xamarin学习资源收集
推荐入门视频 跨行動平台App開發概觀- 使用Xamarin+Visual Studio https://www.youtube.com/watch?v=ELuFTTn1gS4 中文产品介绍http: ...
- [转]漫谈数据中心CLOS网络架构
http://djt.qq.com/article/view/238 1.数据中心网络架构挑战 随着技术的发展,数据中心的规模越来越大,一个数据中心的服务器容量从几年前的几千台服务器发展到今天的几万甚 ...
- PHP学习(二)----数组
数组: 首先说一下对PHP中的理解,建立一个好的理解模型还是很关键的: 1.PHP中的数组实际上可以理解为键值对,key=>value;而对于key的取值,可以是string/integer;v ...
- but this usually doesn’t gain you anything.
High Performance My SQL, Third Edition Date and Time Types My SQL has many types for various kinds o ...