修改了svn服务器配置,配置http方式访问svn服务器
本文讲述如何利用Apache配置实现http的方式访问Subversion,本文的目录如下:
配置http匿名访问
增加用户名和密码控制
增加文件目录控制
【前提要求】
安装apache httpd,可参考:图文介绍apache2.2.x安装配置(http://www.micmiu.com/enterprise-app/cluster/apache-httpd-install/)
安装SVN服务Subversion,可参考:图文介绍windows搭建SVN服务端的基本步骤(http://www.micmiu.com/techother/software/subversion-windows-guide/)
启动Subversion服务(命令:svnserve -d -r d:\svnroot),创建好repository,并导入一个项目,比如:micmiu-app:
subversion 跟目录结构如下:
D:\>tree svnroot
卷 work 的文件夹 PATH 列表
卷序列号为 2AF7-9BD9
D:\SVNROOT
└─repo
├─conf
├─db
│ ├─revprops
│ │ └─0
│ ├─revs
│ │ └─0
│ ├─transactions
│ └─txn-protorevs
├─hooks
└─locks
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
D:\>treesvnroot
卷work的文件夹PATH列表
卷序列号为2AF7-9BD9
D:\SVNROOT
└─repo
├─conf
├─db
│├─revprops
││└─0
│├─revs
││└─0
│├─transactions
│└─txn-protorevs
├─hooks
└─locks
svn客户端连接截图如下:
【一】、配置http匿名访问
Apache httpd 安装路径:D:\Program Files (x86)\Apache2.2\
Subversion 安装路径:D:\Program Files (x86)\Subversion\
把%Subversion_home%\bin\mod_dav_svn.so文件复制到%apache_home%\moduals\
在%apache_home%\conf\httpd.conf 文件的末尾添加如下内容:
# load http svn conf
Include conf/extra/httpd-svn.conf
1
2
# load http svn conf
Includeconf/extra/httpd-svn.conf
创建%apache_home%\conf\extra\httpd-svn.conf文件,具体内容如下:
# load module for svn
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
DAV svn
SVNParentPath d:/svnroot
#SVNListParentPath on
1
2
3
4
5
6
7
8
9
# load module for svn
LoadModuledav_modulemodules/mod_dav.so
LoadModuledav_svn_modulemodules/mod_dav_svn.so
DAVsvn
SVNParentPathd:/svnroot
#SVNListParentPath on
配置好后需要重启Apahce服务,用svn客户端,打开:http://localhost/svn/repo/micmiu-app,如下图:
这时会发现已经实现了http访问SVN了,不过同时会发现之前在SVN服务端配置的用户名和密码控制无效了,如何控制请看下面接下来的内容。
【二】、增加用户名和密码控制
1.基本认证访问控制 htpasswd
创建密码文件,示例用于用户michael和micmiu 的访问控制:
D:\Program Files (x86)\Apache2.2\bin>htpasswd -c -m "d:/Program Files (x86)/Apache2.2/conf/svn-auth.htpasswd" michael
New password: *******
Re-type new password: *******
Adding password for user michael
D:\Program Files (x86)\Apache2.2\bin>htpasswd -m "d:/Program Files (x86)/Apache2.2/conf/svn-auth.htpasswd" micmiu
New password: ******
Re-type new password: ******
Adding password for user micmiu
1
2
3
4
5
6
7
8
9
D:\ProgramFiles(x86)\Apache2.2\bin>htpasswd-c-m"d:/Program Files (x86)/Apache2.2/conf/svn-auth.htpasswd"michael
Newpassword:*******
Re-typenewpassword:*******
Addingpasswordforusermichael
D:\ProgramFiles(x86)\Apache2.2\bin>htpasswd-m"d:/Program Files (x86)/Apache2.2/conf/svn-auth.htpasswd"micmiu
Newpassword:******
Re-typenewpassword:******
Addingpasswordforusermicmiu
ps:-c 表示创建密码文件;-m 表示用md5对密码加密
修改 conf\extra\httpd-svn.conf 文件,内容如下:
# load module for svn
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
DAV svn
SVNParentPath d:/svnroot
#SVNListParentPath on
# Authentication: Basic
AuthName "welcome to micmiu svn"
AuthType Basic
AuthUserFile "d:/Program Files (x86)/Apache2.2/conf/svn-auth.htpasswd"
# Authorization: Authenticated users only
Require valid-user
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# load module for svn
LoadModuledav_modulemodules/mod_dav.so
LoadModuledav_svn_modulemodules/mod_dav_svn.so
DAVsvn
SVNParentPathd:/svnroot
#SVNListParentPath on
# Authentication: Basic
AuthName"welcome to micmiu svn"
AuthTypeBasic
AuthUserFile"d:/Program Files (x86)/Apache2.2/conf/svn-auth.htpasswd"
# Authorization: Authenticated users only
Requirevalid-user
配置好后需要重启Apahce服务,用svn客户端,打开:http://localhost/svn/repo/micmiu-app,如下图:
从上图可见提示你输入正确的用户名和密码才能访问。
2.Digest 方式认证控制 htdigest
创建密码文件,示例用于用户michael和micmiu 的访问控制:
D:\Program Files (x86)\Apache2.2\bin>htdigest -c "d:/Program Files (x86)/Apache2.2/conf/svn-auth.htdigest" "my subversion repo" michael
Adding password for michael in realm my subversion repo.
New password: *******
Re-type new password: *******
D:\Program Files (x86)\Apache2.2\bin>htdigest "d:/Program Files (x86)/Apache2.2/conf/svn-auth.htdigest" "my subversion rep" micmiu
Adding user micmiu in realm my subversion rep
New password: ******
Re-type new password: ******
1
2
3
4
5
6
7
8
9
D:\ProgramFiles(x86)\Apache2.2\bin>htdigest-c"d:/Program Files (x86)/Apache2.2/conf/svn-auth.htdigest""my subversion repo"michael
Addingpasswordformichaelinrealmmysubversionrepo.
Newpassword:*******
Re-typenewpassword:*******
D:\ProgramFiles(x86)\Apache2.2\bin>htdigest"d:/Program Files (x86)/Apache2.2/conf/svn-auth.htdigest""my subversion rep"micmiu
Addingusermicmiuinrealmmysubversionrep
Newpassword:******
Re-typenewpassword:******
修改conf\extra\httpd-svn.conf 文件,内容如下:
# load module for svn
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
DAV svn
SVNParentPath d:/svnroot
#SVNListParentPath on
# Authentication: Digest
#AuthName "welcome to micmiu svn"
#AuthType Digest
#AuthUserFile "d:/Program Files (x86)/Apache2.2/conf/svn-auth.htdigest"
# Authorization: Authenticated users only
Require valid-user
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# load module for svn
LoadModuledav_modulemodules/mod_dav.so
LoadModuledav_svn_modulemodules/mod_dav_svn.so
DAVsvn
SVNParentPathd:/svnroot
#SVNListParentPath on
# Authentication: Digest
#AuthName "welcome to micmiu svn"
#AuthType Digest
#AuthUserFile "d:/Program Files (x86)/Apache2.2/conf/svn-auth.htdigest"
# Authorization: Authenticated users only
Requirevalid-user
配置好后需要重启Apahce服务,用svn客户端,打开:http://localhost/svn/repo/micmiu-app,和上面一样会提示你输入用户名和密码。
【三】、增加文件目录控制
1.把%Subversion_home%\bin\mod_authz_svn.so文件复制到%apache_home%\moduals\
2.修改 conf\extra\httpd-svn.conf 文件,内容如下:
# load module for svn
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
DAV svn
SVNParentPath d:/svnroot
#SVNListParentPath on
# Authentication: Digest
#AuthName "welcome to micmiu svn"
#AuthType Digest
#AuthUserFile "d:/Program Files (x86)/Apache2.2/conf/svn-auth.htdigest"
# Authentication: None
# Authorization: Path-based access control; authenticated users only
AuthzSVNAccessFile "d:/Program Files (x86)/Apache2.2/conf/svn-authz-file"
#Satisfy Any
# Authorization: Authenticated users only
Require valid-user
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# load module for svn
LoadModuledav_modulemodules/mod_dav.so
LoadModuledav_svn_modulemodules/mod_dav_svn.so
LoadModuleauthz_svn_modulemodules/mod_authz_svn.so
DAVsvn
SVNParentPathd:/svnroot
#SVNListParentPath on
# Authentication: Digest
#AuthName "welcome to micmiu svn"
#AuthType Digest
#AuthUserFile "d:/Program Files (x86)/Apache2.2/conf/svn-auth.htdigest"
# Authentication: None
# Authorization: Path-based access control; authenticated users only
AuthzSVNAccessFile"d:/Program Files (x86)/Apache2.2/conf/svn-authz-file"
#Satisfy Any
# Authorization: Authenticated users only
Requirevalid-user
3.创建%apache_home%\conf\svn-authz-file文件,具体内容如下:
[/]
* = rw
[repo:/micmiu-app/src]
* =
1
2
3
4
[/]
*=rw
[repo:/micmiu-app/src]
*=
该配置表示:可以访问对根目录读写,同时对micmiu-app/src目录没有任何权限
4.配置好后需要重启Apahce服务,用svn客户端,打开:http://localhost/svn/repo/micmiu-app,过程如下:
可见测试结果和我们预期设想的效果一致。
一些参考资料:
http://subversion.apache.org/faq.zh.html
http://svnbook.red-bean.com/nightly/en/svn.serverconfig.html
http://svnbook.red-bean.com/nightly/en/svn.serverconfig.httpd.html
http://svnbook.red-bean.com/nightly/en/svn.serverconfig.pathbasedauthz.html
修改了svn服务器配置,配置http方式访问svn服务器相关推荐
- centos7搭建SVN并配置使用http方式访问SVN服务器
一.检查SVN是否安装 centos7系统自带SVN # rpm -qa subversion [root@localhost ~]# rpm -qa subversion subversion-1. ...
- svn访问方式 linux,ssh+svn 方式访问svn
一. 服务器安装和配置 1) 安装ssh server和subversion yum install -y openssh-server subversion 2) 建立svn用户,此用户为ssh登录 ...
- Tomcat配置https方式访问
1.准备安全证书 获得安全证书有两种方式:一种方式是到权威机构申购CA证书,还有一种方式是创建自我签名的证书.本文以自签名证书为例,使用SUN公司提供的证书制作工具keytool制作自签证书,JDK版 ...
- Tomcat配置https方式访问__001
1.准备安全证书 获得安全证书有两种方式:一种方式是到权威机构申购CA证书,还有一种方式是创建自我签名的证书.本文以自签名证书为例,使用SUN公司提供的证书制作工具keytool制作自签证书,JDK版 ...
- 阿里云SLB配置HTPPS方式访问
1.http和htpps的区别 http: 默认端口:80 安全性: https: 默认端口:443 安全性:添加有加密证书,安全性相对较高 2.开始配置 1.slb负载均衡 在负载均衡实例列表中将服 ...
- powerdns与nginx结合实现以域名和IP方式访问web服务器80端口时分别跳转到不同页面...
1.powerdns设置 2.内部网站介绍 web服务器采用nginx,内网dns采用powerdns. 想实现的功能如下 通过ip访问时跳转到A页面,通过域名访问时,让其跳转到B页面.两种方式的端口 ...
- Jpom 配置SSH 方式启动远程服务器jar包,远程执行启动脚本无效
发布命令 source /etc/profile cd /home/rejoin/open-platform-service ./run.sh restart 命令解释: 1.加载环境变量 2.进入命 ...
- 《三、企业级SVN运维实战:SVN服务配置https访问》
文章目录 一.svn服务部署 二.安装httpd及svn模块 三.svn http配置 四.创建svn http用户 五.修改svn仓库配置文件 六.配置https请求svn 七.svn测试 总结:整 ...
- SVN配置https访问 - linux服务器
CentOS服务器部署svn+apache http + ssl https访问 一.配置https请求访问SVN 1.1 安装SSL模块 1.2 生成服务端数字证书 1.3 生成客户端数字证书 1. ...
最新文章
- 计算机专业可以用台式机吗,Win10X电脑操作系统可以装在台式机吗?
- 斐波那契数列的前n项值
- MongoDb连接表的查询
- Kafka 分布式环境搭建
- div中iframe高度自适应问题
- es6 类的私有属性_JavaScript ES6类中的私有属性
- spring官网下载
- qt tabwidget 设置tab 位置_qml创建TabWidget的案例
- Julia: Join与字符串Array
- python内置函数系列之str(一)(持续更新)
- Pentaho Report Designer
- 大话设计模式C++实现-第7章-代理模式
- 复制html代码怎么粘贴快捷键,电脑复制粘贴快捷键,教您电脑怎么用键盘复制粘贴...
- php企业后台管理系统模板,企业版PHP后台管理模板【清爽型】修改版~
- 云计算(Day 8)
- 【软件测试项目】三角形路径测试
- busybox tools
- Arcpy基础入门-6、arcpy要素属性操作
- android系统如何获得外置卡路径
- 一个例子手把手抬你入门Vue2
热门文章
- ssd的smt_联合评测 | Intel Optane SSD 有效加速 SmartX 超融合在 Oracle 等场景下的系统性能...
- dhcp服务器未能分发地址,H3C案例查看:ADCampus网络dhcp服务器未配置策略导致地址分配错误问题...
- 美团基于跨平台 Flutter 的动态化平台建设
- Barcode读取之barcode_para_contrast_min.hdev
- Python实现王者荣耀小助手(二)
- 【TSP问题】基于蜜蜂算法求解旅行商问题附matlab代码
- 瞬间“友尽”的五大整蛊代码,快去坑你的小伙伴吧!
- 沙箱环境--虚拟环境
- ONU、ONT、SFU、HGU……有什么区别
- Android 自定义View 绘制正N边形