SVN+apache安装部署

一,安装软件:

安装apache

#yum  install httpd

安装subversion

#yum install subversion*

安装需要的模块mod_dav_svn

#yum -y install mod_dav_svn

二,创建版本库并开始配置svn

1,创建版本库

创建目录结构

#mkdir -p /var/svn              注:/var/svn 是SVN的库存放目录     /var/svn/repos是svn的库根/

2.运行创建版本库的命令,指定数据存储为 FSFS,如果要指定为 Berkeley DB,则将 fsfs 替换为 bdb
# svnadmin create --fs-type fsfs/var/svn/repos

/var/svn/repos/conf/passwd  是用户名密码文件,如用http方式访问svn则此文件无用

[users]

用户名 = 密码

/var/svn/repos/conf/svnserve.conf 是主配置文件

[general]
anon-access = none
auth-access = write
password-db = passwd     #用户名密码文件位置
authz-db = authz          #权限文件位置

3,可用可写的svn账户提交库内容,也可以创建目录结构并导入项目,

#svn import /etc/svn/tmp/ file:///var/svn/repos/--message "init"

启动svn

#svnserve -d -r /var/svn/

注:关闭防火墙,进行测试

三,配置apache 实现apache+svn的结构

1,第一步要给svn的源目录修改权限

#chown -R apache:apache /var/svn

apache 是http的启动用户

2,查看apache支持的模块vim /etc/httpd/conf.d/subversion.conf

LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so

并添加相应的apache配置

<Location /svn>      #这里的/svn是网页访问时http://ip/svn(这里)/库名
  DAV svn
  SVNParentPath /var/svn    #父目录
 AuthTypeBasic
 AuthName "Auth"
 AuthUserFile/var/svn/passwordfile      #密码文件位置
 AuthzSVNAccessFile /var/svn/repos/conf/authz   #权限文件
 Requirevalid-user
 ErrorDocument404 default
 </Location>

3,授权访问用户:

给密码文件授权

#chown apache.apache passwordfile

Apache 提供了一个工具 htpasswd,用于生成用户文件,可以在 Apache 的安装目录下找到。具体使用方法如下:-c 创建新的文件

#htpasswd –c /var/svn/passwordfile username

如果该文件已存在则需要加-b,更新用户密码也用这个

#htpasswd –b /var/svn/passwordfile username passwd

#service httpd restart

用IE访问svn 的url http://192.168.40.149/svn/repos/

出现用户提示说明成功

3.目录访问控制

#vim /var/svn/repos/conf/authz      策略文件,详细的权限控制可以在这个策略文件中指定

[/]  是库根目录    [/test]  为库下文件夹    @users  为users组

网页自主更改密码

先安装PHP

#yum install php

把两个脚本放在apache主页目录/var/www/html/

#vim gaimi.html

把以下内容粘贴进去

<html>
<body>
<form action="http://59.151.109.141/passwd.php?"method="get">
<p>确认用户名: <inputtype="text" name="user" /><p>
<p>确认原密码: <inputtype="text" name="oldpass" /><p>
<p>新密码: <inputtype="test" name="passwd"/><p>
<input type="submit"value="修改" />
</form>
</body>
</html>

然后

#vim passwd.php

把以下内容粘贴进去

<?php
$username = $_GET["user"];
$oldpass = $_GET["oldpass"];
$passwd = $_GET["passwd"];
$passwdfile="/var/svn/passwordfile";
$command=‘"htpasswd" -b‘.$passwdfile." ".$username." ".$passwd;
system($command, $result);
if($result==0){
   print("密码已修改");
}
else{
   print("修改失败,请重试");
 }
?>

然后从网页访问修改密码 http://ip/gaimi.html

时间: 2024-10-23 11:16:51

SVN+apache安装部署的相关文章

Apache安装部署

1.Apache介绍 Apache是世界使用排名第一的Web服务器软件,可以运行在几乎所有广泛使用的计算机平台上,阿帕奇是北美印第安人的一个部落,在美国的西南部.也是一个基金会的名称 API扩展,将Perl/Python等解释器编译到服务器中 Apache的特点是简单.速度快.性能稳定,并可做代理服务器来使用.可以支持SSL技术,支持多个虚拟主机.Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支在一个ApacheWeb站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器 2

svn + apache 安装

系统:centos6.3 svn:  subversion-1.6.1 apache: httpd-2.2.29 //创建svn路径 [[email protected] /]# mkdir svn [[email protected] opt]# wget http://subversion.tigris.org/downloads/subversion-deps-1.6.1.tar.gz [[email protected] opt]# wget  http://subversion.tig

SVN 的安装部署

SVN 介绍 什么是 SVN SVN饰近几年来崛起的非常优秀的版本管理工具,于CVS管理工具一样,SVN是一个跨平台的开源的版本控制系统 SVN 与 git 的区别 SVN集中式版本控制系统 git分布式的版本控制 SVN 服务器运行模式与访问模式 SVN服务常见的运维访问方式 独立服务器访问 svn://svn.sideboy.com 借助nginx等http服务 http://svn.sideboy.com 本地直接访问 file:///svn.sideboy.com SVN客户端访问方式

Puppet安装部署篇(一)

Puppet的安装部署,后续使用下面三台机器演示,为了演示效果主机名也采用idc+用途来表示. 192.168.30.134  puppet  Puppet Server端 192.168.30.131  sh-web1  Web Server 192.168.30.132  sh-proxy2  Proxy Server puppet 使用支持两种方式: 1.单机使用 (这种可以忽略) 2.master/agent (标准使用) 部署前关系防火墙: 关闭selinux内核防火墙: #sed '

SVN安装部署方案

svn介绍 Subversion(SVN)是一个开源的,跨平台的版本控制系统,由CollabNet公司成立于2000年:Subversion作为新一代的版本管理系统,以其目录版本化.原子提交.版本化的元数据.更加有效的分支和标签等特性,至今已被众多的互联网企业使用来管理网站.论坛的代码文件:Subversion最独特的地方,便是可以通过Apache的扩展模块与Apache的HTTP服务相结合,实现更安全的特性与管理,其次用户还可以通过HTTP协议去访问版本库,还可以通过SSL协议传输加密,保证数

Linux 安装部署SVN服务器

svn 版本管理工具. svn服务器有2种运行方式:独立服务器和借助apache运行.两种方式各有利弊,用户可以自行选择. svn存储版本数据也有2种方式:BDB(一种事务安全型表类型)和FSFS(一种不需要数据库的存储系统).因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点. 1.环境 # cat /etc/redhat-release CentOS release 6.3 (Final) # getconf LONG_BIT 64 2.安装 svn #yum -y

部署Svn+Apache服务器

一.部署环境 操作系统:centos7.4yum已配置selinux已关闭 二.部署svn+apache 1.通过yum安装apache和svn [[email protected] ~]# yum install -y httpd subversion mod_dav_svn mod_dav_svn是apache访问svn的模块 2.验证 [[email protected] ~]# httpd -version Server version: Apache/2.4.6 (CentOS) Se

Apache Hadoop集群离线安装部署(三)——Hbase安装

Apache Hadoop集群离线安装部署(一)--Hadoop(HDFS.YARN.MR)安装:http://www.cnblogs.com/pojishou/p/6366542.html Apache Hadoop集群离线安装部署(二)--Spark-2.1.0 on Yarn安装:http://www.cnblogs.com/pojishou/p/6366570.html Apache Hadoop集群离线安装部署(三)--Hbase安装:http://www.cnblogs.com/po

Linux下svn的安装与部署

最近工作碰到一个问题,我和一个同伙负责开发一个管理系统,基于原来的代码上进行修改,每当他修改之后,我要再修改都要和他确定是不是最新的文件,才能进行修改.非常影响工作的效率,所以在网上找了关于svn的使用.下面开始svn的安装和部署,解决开发中代码的同步问题. 在Linux上安装很简单. 第一.先查看yum 有没有被占用,被占用就 kill 掉,再进行 yum install -y subversion [[email protected] ~]# ps aux |grep yum root