设为首页 收藏本站
查看: 716|回复: 0

[经验分享] apache 和 svn 环境搭建

[复制链接]

尚未签到

发表于 2016-12-31 10:09:23 | 显示全部楼层 |阅读模式
svn可以单独搭建,客户端使用svn协议访问;也可以和apache一起搭建,客户端使用http或者https协议访问

搭建环境
系统 : linux
安装文件 :
httpd-2.2.22.tar.bz2
subversion-1.6.5.tar.bz2
subversion-deps-1.6.5.tar.bz2

安装apache
解压
tar jxvf httpd-2.2.22.tar.bz2
编译安装
$./configure --prefix=/home/space/magicbox/env/apache --enable-so --enable-dav --enable-dav-fs --enable-ssl --enable-maintainer-mode
$make
$make install

安装svn
将subversion-1.6.5.tar.bz2,subversion-deps-1.6.5.tar.bz2放在同一目下
分别解压,两个压缩包都会解压进subversion-1.6.5文件夹中
cd subversion-1.6.5
编译安装
$./configure --prefix=/home/space/tool/subversion --with-apxs=/home/space/magicbox/env/apache/bin/apxs --with-apr=/home/space/magicbox/env/apache/bin/apr-1-config --with-apr-util=/home/space/magicbox/env/apache/bin/apu-1-config
$make
$make install
完成后,查看apache httpd.conf文件,会怎加
LoadModule dav_svn_module modules/mod_dav_sav.so
LoadModule authz_svn_module modules/mod_authz_svn.so
这是apache svn处理模块,经过配置后,一定url格式的访问将有这两个模块控制,访问svn路径

配置apache和svn
修改apache httpd.conf文件,将里面的user和group换成你系统中存在的用户,并且该用户在系统中要有用到的文件系统权限
使用apache 的htpasswd命令创建用户和密码文件(该文件相当于用户数据库,用户apache和svn访问权限控制)
./htpasswd -c 文档存放路径 username (创建第一个用户时使用-c,表需要创建文件)
./htpasswd -m 文档存放路径 username (之后追加用户时使用-m参数)

svn创建svn库
使用svn命令
./svnadmin create /home/work/workdir/svn/repos1
./svnadmin create /home/work/workdir/svn/repos2
/home/work/workdir/svn 为svn跟路径
repos1和repos2为svn的两个库

在httpd.conf文件的结尾加
<Location /svn>
DAV svn
SVNParentPath /home/work/workdir/svn
AuthType Basic
AuthName "Hello welcome to here"
AuthUserFile /home/work/local/svn/passwd  --上面用htpasswd创建的用户文件地址
AuthzSVNAccessFile /home/work/workdir/svn-repository/repos1/conf/authz -- 下面解释
Require valid-user
</Location>

配置 svn库
repos1和repos2均为svn库,现拿repos1做为例子
cd /home/work/workdir/svn/repos1/conf
发现有三个文件authz、passwd和svnserve.conf
vi svnserve.conf
打开并修改以下两行
password-db = /home/work/local/svn/passwd --上面用htpasswd创建的用户文件地址
authz-db = /home/work/workdir/svn-repository/repos1/conf/authz --下面解释

authz的解释,同passwd文件一起,供apache、svn访问认证和授权,passwd提供认证数据,而authz提供授权数据,这个文件可以使用svn库中的conf文件中的authz也可以自己创建,
内容如下

[groups]
rd = user1,user2  --passwd文件中存在的用户,rd代表用户组,在组上赋权限
qa =              --同上

[repos1:/]        --对svn库repos1的根目录赋权,但随svn启动命令不同,写的不同
@rd = rw          --对rd组赋读写权限
@qa = r

启动apache
./apachectl start

启动svn
svnserve -d -r /home/work/workdir/svn

解释
-r 后是svn根路径,如果路径一直到摸个库,则代表单独起着一个svn库
例如
svnserve -d -r /home/work/workdir/svn/repos1
此时上面authz的配置应该写成
[:/]        --对svn库repos1的根目录赋权,但随svn启动命令不同,写的不同
@rd = rw          --对rd组赋读写权限
@qa = r

至此,你用浏览器可以访问http://localhost/svn/repos1查看svn了

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-321906-1-1.html 上篇帖子: apache+tomcat 负载均衡 下篇帖子: Apache Poi 读写 word 文档
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表