`
softchi
  • 浏览: 27400 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

apache 与 svn配置

阅读更多
相关软件:

      a:svn服务器软件: Setup-Subversion-1.6.13.msi

      b:svn客户端软件: TortoiseSVN-1.6.12.20536-x64-svn-1.6.15.msi

      c:pache服务器软件: httpd-2.2.15-win32-x86-openssl-0.9.8m.msi 


参考资料:

       Windows下安装与配置SVN+APACHE(英文版)
   
       Windows下安装与配置SVN_APACHE(中文版下载)


本课教案:

svn+apache架构(Win32环境)的安装与配置

一、准备软件。

a:svn服务器软件: Setup-Subversion-1.6.13.msi, 版本1.6.13;

b:svn客户端软件: TortoiseSVN-1.6.12.20536-win32-svn-1.6.15.msi, 版本1.6.12;

c:apache服务器软件:httpd-2.2.15-win32-x86-openssl-0.9.8m.msi, 版本2.2.15;

d: 运行环境 Microsoft Windows XP Professional SP3。


二、安装软件。

a. 先安装svn客户端软件,再安装svn服务器端软件。svn客户端软件和服务器端软件的具体安装过程就参看第一课的视频教程。

b. 安装apache服务器软件。
   安装好后,测试一下是否成功  http://localhost


三、把apache的bin路径加到环境变量里。
   到环境变量
    加上;C:/Program Files/Apache Software Foundation/Apache2.2/bin


以下步骤结合svn和apache

四、修改apache的配置文件。
   C:/Program Files/Apache Software Foundation/Apache2.2/
      conf/httpd.conf

a: 把下面两个行前面的#号去掉,注意行前不能有空格:
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so

b: 在模块加载的最后添加下面两句:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

c: 在配置文件最末尾添加:

<Location /svn/>
Dav svn
SVNParentPath "C:/svn/repository"
AuthType Basic
AuthName "SVN Repository"
SVNListParentPath on
AuthUserFile "C:/svn/userfile.txt"
AuthzSVNAccessFile "C:/svn/accessfile.txt"
Require valid-user
</Location>
RedirectMatch ^(/svn)$ $1/

下面是配置文件的修改情况:


# Dynamic Shared Object (DSO) Support
#
# To be able to use the functionality of a module which was built as a DSO you
# have to place corresponding `LoadModule' lines at this location so the
# directives contained in it are actually available _before_ they are used.
# Statically compiled modules (those listed by `httpd -l') do not need
# to be loaded here.
#
# Example:
# LoadModule foo_module modules/mod_foo.so
#
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
#LoadModule auth_digest_module modules/mod_auth_digest.so
#LoadModule authn_alias_module modules/mod_authn_alias.so
#LoadModule authn_anon_module modules/mod_authn_anon.so
#LoadModule authn_dbd_module modules/mod_authn_dbd.so
#LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authn_file_module modules/mod_authn_file.so
#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
#LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
#LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
#LoadModule cache_module modules/mod_cache.so
#LoadModule cern_meta_module modules/mod_cern_meta.so
LoadModule cgi_module modules/mod_cgi.so
#LoadModule charset_lite_module modules/mod_charset_lite.so
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_lock_module modules/mod_dav_lock.so
#LoadModule dbd_module modules/mod_dbd.so
#LoadModule deflate_module modules/mod_deflate.so
LoadModule dir_module modules/mod_dir.so
#LoadModule disk_cache_module modules/mod_disk_cache.so
#LoadModule dumpio_module modules/mod_dumpio.so
LoadModule env_module modules/mod_env.so
#LoadModule expires_module modules/mod_expires.so
#LoadModule ext_filter_module modules/mod_ext_filter.so
#LoadModule file_cache_module modules/mod_file_cache.so
#LoadModule filter_module modules/mod_filter.so
#LoadModule headers_module modules/mod_headers.so
#LoadModule ident_module modules/mod_ident.so
#LoadModule imagemap_module modules/mod_imagemap.so
LoadModule include_module modules/mod_include.so
#LoadModule info_module modules/mod_info.so
LoadModule isapi_module modules/mod_isapi.so
#LoadModule ldap_module modules/mod_ldap.so
#LoadModule logio_module modules/mod_logio.so
LoadModule log_config_module modules/mod_log_config.so
#LoadModule log_forensic_module modules/mod_log_forensic.so
#LoadModule mem_cache_module modules/mod_mem_cache.so
LoadModule mime_module modules/mod_mime.so
#LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule negotiation_module modules/mod_negotiation.so
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
#LoadModule speling_module modules/mod_speling.so
#LoadModule ssl_module modules/mod_ssl.so
#LoadModule status_module modules/mod_status.so
#LoadModule substitute_module modules/mod_substitute.so
#LoadModule unique_id_module modules/mod_unique_id.so
#LoadModule userdir_module modules/mod_userdir.so
#LoadModule usertrack_module modules/mod_usertrack.so
#LoadModule version_module modules/mod_version.so
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

<IfModule !mpm_netware_module>
<IfModule !mpm_winnt_module>

… (这里省略了很多默认配置,直到文件最后添加加如下内容:)

<Location /svn/>
Dav svn
SVNParentPath "C:/svn/repository"
AuthType Basic
AuthName "SVN Repository"
SVNListParentPath on
AuthUserFile "C:/svn/userfile.txt"
AuthzSVNAccessFile "C:/svn/accessfile.txt"
Require valid-user
</Location>
RedirectMatch ^(/svn)$ $1/


注释:
设置 解释
<Location /svn> 意思是S version版本库的URL是http://MyServer/svn/
DAV svn 告诉Apache是哪个模块响应那个URL的请求-此刻是S version模块。
SVNListParentPath on 对于S version1.3或者更高版本,这个指示表示显示所有SVNParentPath下的版本库。
SVNParentPath D:\SVN 告诉S version需要查看的版本库位于D:\SVN之下
AuthType Basic 激活基本认证,就是用户名/密码
AuthName "S version repositories" 用来说明何时弹出要求用户输入认证信息的认证对话框
AuthUserFile passwd 指定使用的认证密码文件
AuthzSVNAccessFile 位置S version版本库的访问控制文件的路径
Require valid-user 指定只有输入了正确的用户/密码的用户可以访问URL




五、从svn的bin目录下拷贝mod_authz_svn.so和mod_dav_svn.so两个模块到apache的modules目录。

C:\Program Files\Subversion\bin
  拷贝mod_authz_svn.so和mod_dav_svn.so两个模块

  C:\Program Files\Apache Software Foundation\Apache2.2\modules

六、重启apache服务。

七、手动创建一个库根目录,用下面命令创建一个版本库。

命令:
F:\115Box\SHARE\SVN\repository>
F:\115Box\SHARE\SVN\repository>svnadmin create svnrepository

八、用命令创建用户帐号文件。

命令:

F:\115Box\SHARE\SVN\manager>htpasswd -cm userfile.txt arain

注意:以后添加帐号不需要-c 参数,只有第一次创建帐号需要。


九、手动创建权限控制文件。

F:\115Box\SHARE\SVN\manager  新建文件 accessfile.txt
[/]
*=rw
----------------------不用写入accessfile.txt
所有用户都可以读写权限


十、在客户端输入http://127.0.0.1/svn/svnrepository/访问。也可以浏览器里访问,在浏览器里还可以通过http://127.0.0.1/svn/svnrepository/来访问库列表。

到此为止已完成svn与apache架构的安装与配置。


十一、注意事项。

a. svn+apache架构和svn独立服务器的区别。选择前者的原因:可以通过HTTP来访问,可以使用到apache现有的一些模块,比如说apache的ldap模块、mysql模块,
   svn结合apache可以通过这些模块来进行第三方系统来进行认证。

b. 学会查看系统log和apache的log。

c. 库列表只能通过浏览器来进行访问。


-----------------------------------------------------------------
添加用户
创建用户
l   使用MD5加密,创建用户和passwd文件(passwd由apache中的htpasswd创建)
C:\Program Files\Apache Software Foundation\Apache2.2\bin > htpasswd -cm F:/115Box/SHARE/SVN/manager/userfile.txt user1
  //用htpasswd命令创建第一个用户(user1),同时生成密码认证文件,c参数为create,m参数为MD5加密方式
New password: ******
Re-type new password: ******
Adding password for user user1   //加入用户成功


F:\115Box\SHARE\SVN\manager>htpasswd -m userfile.txt user2 
//用htpasswd命令创建第二个用户(user2),注意如果在这时加入c参数会覆盖掉之前创建的用户及文件。
New password: ******
Re-type new password: ******
Adding password for user user2   //加入用户成功


权限管理
F:\115Box\SHARE\SVN\manager>accessfile.txt内容如下:

[groups]
# 任何想要查看所有文档的非本部门人士
g_vip = xtow,xni
# 经理
g_manager = xone
# 开发人员
g_developer = x1,x2,x3
# 测试人员
g_Tester = xxxx
# 策划及文档管理员
g_docs = wupengfei

# 为所有库指定默认访问规则
# 所有人可以读,管理员可以写,危险分子没有任何权限

[/]
* = r
@g_manager = rw
@g_vip = rw
dangerman =

#策划人员及文档管理员
[repository:/Project-DOC/RequirementDocs]
@g_docs = rw
@g_manager = rw
* =

#开发人员
[repository:/Project-DOC/DeveloperDocs]
@g_developer = rw
@g_Tester = rw
@g_manager = rw
* =

#开发人员
[repository:/bobo365]
@g_developer = rw
@g_manager = rw
* =

第二部 用Apache htpasswd工具生成用户密码文件

adminapr1$0b/.....$5UoH/yHKaEhQo5gLGYfmx1
xoneapr1$yc/.....$E3efSo7D6YtZDuoiSd/zD1
xtowapr1$Zd/.....$3o9Qrs/waCtjBP8ry14hJ0
x1:$apr1$Ke/.....$hN/Cvl8ZZKzQ31FonoLhU1
x2:$apr1$8f/.....$2pMPopbCXpemMLgtGEOrA1
分享到:
评论

相关推荐

    Windows 下面 apache+SVN配置

    至此,Windows上的Apache+SVN配置已完成,团队成员可以通过Web界面进行版本控制操作,如提交、更新、查看历史记录等。不过,为了确保安全,建议进一步细化权限设置,根据实际项目需求对用户进行分组,并设置相应的...

    apache+svn的配置软件

    以上就是Apache与SVN配置的基本流程。确保正确配置所有安全设置,限制对SVN仓库的访问,并定期更新软件以保持最佳的安全性。同时,理解SVN的基本命令和工作流程也是必不可少的,例如`svn checkout`、`svn commit`、`...

    apache+svn配置网络服务器

    1. **权限问题**:如果用户无法访问仓库,可能需要检查文件系统权限、Apache用户与仓库目录的关系,以及Apache配置中的授权规则。 2. **性能优化**:对于大型项目,可能需要考虑缓存策略、内存配置(如`...

    apache+svn安装配置

    将Apache与SVN结合,可以创建一个集中式的版本控制系统,允许团队成员通过Web浏览器访问和管理代码库。以下是对"apache+svn安装配置"的详细说明: 1. **Apache服务器安装**: - 首先,你需要下载Apache服务器的...

    ubuntu apache+svn 常用配置

    三、配置Apache与SVN集成 1. 创建SVN仓库:`svnadmin create /var/svn/repo_name` 2. 配置Apache的SSL(可选,但推荐用于安全传输): - 安装SSL模块:`sudo apt-get install ssl-cert` - 生成自签名证书:`sudo ...

    apache+svnserver配置

    在开始Apache与Subversion(SVN)服务器的配置之前,确保已正确安装Apache Web服务器和Subversion。本指南将详细介绍如何在Windows环境下配置Apache与Subversion,以便通过Web方式访问版本控制系统。 **所需软件:*...

    windows下apache+svn

    【Apache + SVN 在 Windows 下的配置与应用】 Apache 和 Subversion(简称 SVN)是软件开发过程中常见的工具,Apache 作为一款流行的开源Web服务器,而 SVN 则是一种版本控制系统,用于协同开发和管理代码版本。本...

    CentOS下安装apache和svn并为svn配置http支持

    在CentOS环境下安装Apache服务器和Subversion(SVN)版本控制系统,并配置Apache来支持HTTP协议的SVN服务,是常见的软件部署与配置任务。以下知识点会详细阐述整个过程中涉及的步骤、组件以及潜在的配置问题。 ### ...

    Linux整合Apache和SVN

    将Apache与SVN整合,可以创建一个高效、安全的Web访问源代码仓库的解决方案。以下是对"Linux整合Apache和SVN"这一主题的详细讲解。 首先,了解SVN的基本概念。Subversion是一个集中式的版本控制系统,它记录了文件...

    Apache配合SVN在Windows下安装配置及其权限管理

    #### 一、安装配置Apache与SVN **1. 安装Apache** - **步骤**: 首先下载Apache 2.2.14版本,并进行安装。安装路径设为`D:\Program Files\Apache Software Foundation\Apache2.2`。 - **验证**: 成功安装后,在...

    apache+svn安装

    ### Apache + SVN 安装与配置详解 #### 概述 在软件开发过程中,版本控制系统是必不可少的工具之一。Subversion(简称SVN)作为一款经典的集中式版本控制系统,在项目管理方面发挥着重要作用。而Apache作为一款...

    windows下基于apache的svn安装教程

    1. **配置Apache**:在Apache的配置文件`httpd.conf`中添加SVN模块`mod_dav_svn`和`mod_authz_svn`。这两模块允许Apache处理SVN请求并进行权限控制。 2. **创建SVN仓库**:使用命令行工具或TortoiseSVN创建一个新的...

    windows下svn+apache搭建svn服务器.docx

    #### 三、配置SVN和Apache 为了让Apache能够代理SVN服务,还需要进行一些必要的配置工作: 1. **复制必要的库文件**: - 将`Subversion\bin`目录下的`mod_authz_svn.so`、`mod_dav_svn.so`、`libdb44.dll`、`...

    windows下apache的svn安装文档

    一、Apache HTTP Server的安装与配置 1. **下载Apache**:首先,从Apache官方站点(http://httpd.apache.org/)下载适用于Windows的Apache HTTP Server安装包。选择最新稳定版本,并确保下载适合你的操作系统的二...

    CentOS4 环境apache+svn完全配置(实际配置日记)

    通过浏览器访问`http://localhost/svn`,如果能够看到SVN仓库的目录列表或登录界面,则表明SVN配置成功。 #### 总结 通过上述步骤,你可以在CentOS4环境下成功地配置Apache与Subversion,实现远程团队协作的需求...

Global site tag (gtag.js) - Google Analytics