用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字

小蜜锋    -  云代码空间

—— 技术宅拯救世界!

Linux下集成apache与svn(源码方式安装)

2013-08-07|1861阅||

摘要:环境1.安装Apache2.2.142.安装Subversion 1.6.63.安装后的系统设置4.Apache设置5.svn库的配置6.运行SVN服务器 环境:Red Hat Enterprise Linux Server release 5.3 (Tikanga)

环境
1.安装Apache2.2.14
2.安装Subversion 1.6.6
3.安装后的系统设置
4.Apache设置
5.svn库的配置
6.运行SVN服务器

环境:
Red Hat Enterprise Linux Server release 5.3 (Tikanga)
httpd-2.2.14.tar.gz
subversion-1.6.6.tar.gz

到官网http://subversion.tigris.org/ 下载当前最新的稳定版本subversion-1.6.6.tar.gz
到官网http://httpd.apache.org/ 下载当前最新的稳定版本httpd-2.2.14.tar.gz

1.安装Apache2.2.14
用root账号执行以下命令:
tar zxf httpd-2.2.14.tar.gz #解压到当前目录
cd httpd-2.2.14 #进入解压后的目录
./configure --prefix=/local/svnroot/apache2 --enable-so --enable-mods-shared=all --enable-dav=share --enable-dav-fs --with-ldap --enable-ldap --enable-authnz-ldap --enable-authn-alias
#定义安装的目标路径(可据自己需要修改),使能LDAP
make #编译
make install #安装
/local/svnroot/apache2/bin/apachectl start #启动Apache
用IE访问以下网址,http://hostIP/,如果提示It works!,则Apache安装成功。
然后就可以先停止Apache了:
/local/svnroot/apache2/bin/apachectl stop #停止Apache

2.安装Subversion 1.6.6
用root账号执行以下命令:
tar zxf subversion-1.6.6.tar.gz #解压到当前目录
cd subversion-1.6.6 #进入解压后的目录
./configure --with-apxs=/local/svnroot/apache2/bin/apxs --prefix=/local/svnroot/subversion --with-apr=/local/svnroot/apache2 --with-apr-util=/local/svnroot/apache2 --with-ssl --enable-maintainer-mode
#定义安装的目标路径(可据自己需要修改),指明Apache的安装路径,使能SSL
make #编译
make install #安装

3.安装后的系统设置
用root账号执行以下命令:
useradd svnroot #创建Linux系统里的账号svnroot
passwd svnroot #设置svnroot账号的密码
chown –R svnroot.svnroot /local/svnroot #把svn目录下所有文件改为属于svnroot
chmod 750 /local/svnroot #把svn目录设为其他Linux用户不可读

4.Apache设置
su svnroot #由root账号切换到svnroot账号来执行以下的命令
vi /local/svnroot/apache2/conf/httpd.conf #编辑Apache服务器的配置文件
下述参数根据自己的安装情况进行相应修改:
ServerRoot "/local/svnroot/apache2"
Listen 80 #可修改为其他的端口,则访问时也要在URL里加上对应的端口号

User svnroot
Group svnroot
#前面把svn安装目录的所有文件改为属于svnroot,这里这样设置,那么Apache运行时就会切换到使用该Linux里的账号svnroot与组svnroot

ServerAdmin sample@sample.com #定义一个邮箱地址
ServerName 192.18.1.1 #该主机的地址

#ErrorLog "logs/error_log"
ErrorLog "|/local/svnroot/apache2/bin/rotatelogs /local/svnroot/apache2/logs/error_log.%Y%m%d.log 86400 480"
#修改Errorlog记录的方式为按天记录,避免一个log文件过大

# CustomLog "logs/access_log" common
CustomLog "|/local/svnroot/apache2/bin/rotatelogs /local/svnroot/apache2/logs/access_log.%Y%m%d.log 86400 480" common
#修改accesslog记录的方式为按天记录,避免一个log文件过大

#在末尾开始加入这部分集成LDAP方面使用的参数
LDAPSharedCacheSize 200000
LDAPCacheEntries 1024
LDAPCacheTTL 600
LDAPOpCacheEntries 1024
LDAPOpCacheTTL 600


AuthLDAPURL "ldap://192.168.1.1:3268/DC=lala,DC=lala,DC=lala,DC=com?sAMAccountName?sub?(objectClass=*)" NONE
AuthLDAPBindDN "CN=la/, lala,OU=users,OU=lala,ou=lala ,DC=lala,DC=lala,DC=la,dc=com"
AuthLDAPBindPassword "password"

#这部分指定访问LDAP服务器的URL、用户名、密码

RewriteEngine on
RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
RewriteRule .* - [F]


include /local/svnroot/apache2/conf/httpd.project
#我把各个库的配置信息用一个独立的文件来管理

5.svn库的配置
su svnroot 
#切换到svnroot账号,如果用root账号创建svn库,会有导致无法提交文件到该库的错误
/local/svnroot/subversion/bin/svnadmin create --fs-type fsfs /local/svnroot/repository/sw1
#该命令用svnadmin创建fsfs存储格式的svn库“sw1”

vi /local/svnroot/apache2/conf/httpd.project #创建httpd.project文件,输入以下内容:
#到时访问的路径就是http://hostip/sw1
DAV svn #使用dav传输
SVNPath /local/svnroot/repository/sw1 #sw1库在Linux系统中的真实物理路径
AuthzSVNAccessFile /local/svnroot/permission/sw1.perm #配置各个用户访问权限的文件
AuthType Basic
AuthName "sw1 SVN repository." #客户端访问该库时显示的登陆提示信息
AuthBasicProvider file abc #先看文件中是否有该用户名,再看LDAP中有无该用户名
AuthzLDAPAuthoritative off
AuthUserFile /local/svnroot/user/sw1.user #记录各个用户名与其密码的文件
Satisfy Any #允许匿名访问,若不允许,可注释掉此行
Require valid-user #要求用户名与密码验证

Shift+分号,输入wq保存后退出编辑模式
:wq

vi /local/svnroot/permission/sw1.perm #创建sw1.perm权限控制文件,输入:
[/]
test = rw #账号test拥有读写权限
* = #其他账号没有读写权限
Shift+分号,输入wq保存后退出编辑模式
:wq

/local/svnroot/apache2/bin/htpasswd -cm /local/svnroot/user/sw1.user test
#-c参数表明创建文件sw1.user,若此文件已存在,则不要-c参数
#-m表示用MD5加密协议
#此命令往sw1.user里添加用户test,随后设置其密码

至此,
安装好了Apache、SVN,
配置好了svn安装目录的权限,
配置好了Apache
建立好了库
设立了库里目录的访问权限
创建了该库的账户
于是,可以运行啦

6.运行SVN服务器
用root账号执行:
/local/svnroot/apache2/bin/apachectl start
然后用IE或TortoiseSVN访问建立好的svn库:
http://hostip/sw1
输入账号test及其密码,应该就能访问了,里面什么内容也没有呢

如果是LDAP账户,则只需要在sw1.perm文件里分配权限给相应的账号就可以了,不需要再创建到sw1.user文件里。
顶 0踩 0收藏
文章评论
    发表评论

    个人资料

    • 昵称: 小蜜锋
    • 等级: 高级设计师
    • 积分: 7088
    • 代码: 757 个
    • 文章: 360 篇
    • 随想: 211 条
    • 访问: 1261 次
    • 关注

    标签

    设计模式(4)java(9)命名规范(2)广告创意(1)愤怒的小鸟(1)游戏(5)jsp(1)配置(1)Surface(1)windows(1)javabean(1)设计方法(1)开发工具(2)web(4)大数据(2)GPU(1)硬盘(1)内部结构(1)黑客(1)窃取(1)编码(1)解决方法(1)php(28)mysql(9)数据库备份(1)数据库还原(1)命令(2)数据库(1)安装(1)2012(2)世界末日(3)仙剑5前传(1)默哀(1)电源(1)女生(1)装饰器模式(2)古剑奇谭(1)电脑桌(1)史上最牛(1)编程语言(2)小米(3)电视机顶盒(1)营销策略(1)Android(8)手势(1)诺亚方舟(1)Eclipse(1)汽车(1)操作系统(1)软件(1)互联网(5)大事记(1)设计师(2)壁纸(1)古剑奇谭2(1)古剑奇谭网络版(1)云计算(2)服务器(1)框架(2)Socket(1)jquery(1)构造函数执行顺序(1)火车票(1)3D(1)数据中心(2)正则表达式(2)Web前端(1)开发框架(1)系统瘫痪(1)12306(2)cpu(1)javascript(2)开发日记(15)体育馆管理系统(15)网页设计(1)CSS3(3)腾讯(3)小游戏(1)interface(1)平板(2)面试(2)设计(5)摄影(2)数据挖掘(1)钢琴谱(1)情人节(1)陈欧体(1)程序员(3)漫画(1)UserAgent(1)iPhone(2)NoSQL(1)ui(9)越狱(1)指南(1)abstract(1)css(3)git(2)八核(2)三星(1)linux(11)数据类型(1)html5(2)UML(2)perftools(1)创意(1)logo(1)色谱(1)响应式(5)Metro(2)虚拟机(1)jvm(1)垃圾回收(1)left(1)join(1)连接查询(1)溯源系统(1)Override(1)SAE(2)WordPress(1)指针(1)链表(1)系统分析师(1)中间件(1)corba(1)static(1)无线(1)监控(1)iPad(1)Apache(2)比特币(2)命名规则(1)手机支付(1)curl(3)笔记(1)导航(1)thinkphp(1)异常导致本地路径泄漏(1)web设计(1)网络安全(1)诗句(1)4K对齐(1)代码库(1)色彩(1)动画片(1)struts2(3)漏洞(5)确认框(1)心情驿站(1)ArscEditor(1)resources.(1)apktool(1)AppKey(1)新浪微博(1)app(5)广告(3)赚钱(1)响应式布局(1)html(1)淘宝(2)微信(1)重构(5)缓存(1)破解(1)后门(1)七夕(1)SEO(2)概念设计(1)面向对象(1)bootstrap(1)性能(2)优化(1)iis(1)爬虫(1)采集(1)算法(2)文本相似度(2)cto(1)js(1)fsockopen(1)扁平化设计(2)网页(1)心情(7)小米电视(1)开箱(1)励志(2)招聘(3)命名(1)notepad++(1)python(1)配色(3)扁平化(4)ps(2)搞笑(2)创业(3)渲染(1)电影(1)模板(1)微博(1)企业家(1)公司(1)总结(1)前端(1)运营(1)变形(1)svn(4)教程(3)搜狗(1)泄密(1)双11(1)天猫(1)UC(1)启动界面(1)光棍节(1)双十一(2)物流(1)备份(1)更新(1)插入(1)插件(2)jsTree(1)(1)海量数据(1)分辨率(1)草图(1)手绘(1)速度(1)文本处理(1)实习(1)感想(1)文件(1)简历(1)65.49.2.17(1)yum(1)解决办法(1)阿里云(2)推广(1)来往(1)春运(1)LBS(1)gb2312(1)utf-8(1)log4j(1)详解(1)收购(1)私服(1)TortoiseGi(1)post(1)异常(2)flappyBird(1)应用创新大赛(1)宙斯杯(1)学习方法(1)xp(1)退役(1)安全(1)技术贴(1)flash(1)刷机(1)京东(1)电商(1)Tomcat(1)JDK(1)免费(1)长投影(1)图标(1)Photoshop(1)云端集成开发环境(1)软件开发(1)可视化(1)工具(2)OpenSSL(1)Heartbleed(1)vsftp(1)中国知网(1)学术论文(1)免费下载(1)开发(1)手册(1)速查表(1)追随战略(1)sdk(1)文章(1)发布(1)文件管理(1)沙画(1)动效(2)原型(1)感悟人生(1)哲理(1)Bash(1)类图(1)知识管理(1)Console(1)调试命令(1)rpm(1)报错(1)挂载(1)数据盘(1)云主机(1)产品经理(1)原型设计(1)mql4(1)mt4(1)ea(1)程序化交易(1)CURLOPT_PO(1)阿里云​(1)CentOS6(2)OpenSSH(1)漏洞修复(2)升级(1)安骑士(1)链克(1)

    站长推荐