svn本地添加用户太麻烦了,如果公司有一百个开发人员要访问,要创建账号密码太麻烦了;所以让他们用AD域账号去登录就很方便,但是权限的管控还是在svn的本地添加(这个暂时还没办法很好的解决)

一、安装依赖包和模块包

  1、域环境已经配置好的,域名example.com

  2、安装本地依赖包和第三方包:

  • #yum -y install openssl  perl perl* pcre  zlib  tree gcc gcc-c++ make libtool pcre-devel lrzsz zlib-devel openssl-devel neon openldap-devel
  • 安装apr

   # tar zvxf  apr-1.5.2.tar.gz

   #cd apr-1.5.2

   #./configure  --prefix=/usr/local/apr

   #make && make install

  • 安装apr-util

   #tar zxvf apr-util-1.5.4.tar.gz

   #cd apr-util-1.5.4

   #./configure --prefix=/usr/local/apr-util  --with-apr=/usr/local/apr

   #make && make install

   #/usr/local/apr-util/bin/apu-1-config  --version   检测apr-util是否安装成功

  • 安装pcre

   #tar zxvf pcre-8.35.tar.gz

   #cd pcre-8.35

   #./configure --prefix=/usr/local/pcre

   #make && make install

  • 安装openssl

   #tar zvxf openssl-1.0.2c.tar.gz
   #cd openssl-1.0.2c
   #./config --prefix=/usr/local/openssl
   #make  && make install

  • 安装sqlite

   #tar zvxf sqlite-autoconf-3080500.tar.gz
   #cd sqlite-autoconf-3080500
   #./config
   #make  && make  install

  • 安装dap

   #tar zvxf dap-3.9.tar.gz
   #cd dap-3.9.tar.gz
   #./configure

   #make  && make install

  • 安装libtool

   #tar zvxf libtool libtool-2.4.6.tar.gz
   #cd libtool-2.4.6
   #./configure

   #make && make install

二、安装http

  #tar zvxf httpd-2.4.6.tar.gz
  #cp -rf ./apr-1.5.2  ./httpd-2.4.6/srclib/apr
  #cp -rf ./apr-util-1.5.4  ./httpd-2.4.6/srclib/apr-util  需要apr和apr-utils并解压到 ./srclib/ 目录下, 再进行编译。
  #cd httpd-2.4.6
  #./configure --prefix=/usr/local/apache --enable-ldap=shared --enable-authnz-ldap=sahred --with-included-apr --with-ldap --with-apr --with-apr-util --enable-so --enable-dav --enable-rewrite=shared --enable-ssl=shared --enable-deflate=shared --enable-authn-dbm=shared --enable-authn-anon=shared --enable-auth-basic=shared  --with-mpm=prefork --enable-cache --enable-file-cache --enable-mem-cache --enable-disk-cache
  ./configure --prefix=/usr/local/apache --enable-ldap --enable-authnz-ldap --with-included-apr --with-ldap --with-apr --with-apr-util --enable-so --enable-dav --enable-rewrite --enable-ssl --enable-deflate=shared --enable-authn-dbm --enable-authn-anon --enable-auth-basic  --with-mpm=prefork --enable-cache --enable-file-cache --enable-mem-cache --enable-disk-cache

  #make && make install

   #ln -s /usr/local/apache  /etc/httpd

   #rmdir /etc/httpd/logs

   #mkdir /var/log/httpd

   #ln -s  /var/log/httpd  /etc/httpd/logs

   #rm /etc/rc.d/init.d/http

   #cp /usr/local/apache/bin/apachectl  /etc/rc.d/init.d/httpd

   #/etc/init.d/httpd start

   #netstat -ntlp | grep httpd   查看http的端口是否开启

   

三、安装svn

  #tar zvxf subversion-1.8.13.tar.gz
  #cd subversion-1.8.10
  # ./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apache --with-apr-util=/usr/local/apache  --with-zlib

    #make  && make install

    #cd ~
    #vim .bash_profile
  #PATH=$PATH:$HOME/bin:/usr/local/subversion/bin
     #source .bash_profile

  #mkdir -p /var/www/svn

  #svnadmin create /var/www/svn/repo1 

  #chown -R apache:apache /var/www/svn/repo1    增加一个站点

  

  #vim /var/www/svn/repo1/conf/svnserve.conf    修改4个点

  

  #vim /var/www/svn/repo1/conf/passwd  添加两个用户密码

  

  #vim /var/www/svn/repo1/conf/authz  设置权限

  

  #svnserve -d -r /var/www/svn/repo1

  #ps aux | grep svn  查看是否正常启动

  

  可以用svn客户端测试一下:

  

四、http和svn的合用

  #cp /usr/local/subvesion/libexec/mod_authz_svn.so  /usr/local/apache/modules/mod_authz_svn.so

  #cp /usr/local/subvesion/libexec/mod_dav_svn.so  /usr/local/apache/modules/mod_dav_svn.so

  #vim /etc/httpd/conf/httpd.conf    添加修改以下项

  

  #svnadmin create /var/www/svn/svntest

  #cp /var/www/svn/svntest/conf/authz  /var/www/svn/

  #touch /var/www/svn/passwd

  #htpasswd /var/www/svn/passwd  svntest

  #htpasswd /var/www/svn/passwd  svnuser    web登录密码设置

  

  #vim /var/www/svn/authz     权限设置

  

  #chown -R  apache:apache  /var/www/svn/svntest

  #vim /etc/httpd/conf/httpd.conf    http配置文件添加访问svn站点

  

   登录网页测试一下 http://ip/svntest/svntest   第一个svntest是http配置文件的Location后面那个/svntest;第二个svntest才是svn服务器在本地create的站点

  

五、http、svn和AD域的合用

  #cat  /etc/hosts

  

  #cat /etc/resolv.conf

  

  #vim /etc/httpd/conf/httpd.conf

  

  

  在域服务器上添加ou及用户

  

  登录网页测试一下 http://ip/svntest/svntest  ok啦!

可能会出现的错误:

1、上传文件时,出现以下报错

  解决方法:创建仓库时

      

      加上--pre-1.6-compatible

2、可能会提示没有权限访问db

  使Apache用户有访问仓库的权限

  

3、最重要的一点,httpd.conf文件中,以下两个区别很重要!!!!!!

  SVNPath F:/SvnData/4rims    定义到具体仓库位置
  SVNParentPath F:/SvnData    定义多个仓库

svn+http+ad域的更多相关文章

  1. freeradius整合AD域作anyconncet认证服务器

    一.服务器要求 Radius服务器:centos6.6.hostname.selinux  disabled.stop iptables AD域服务器:Windows Server 2008 R2 E ...

  2. 如何查看/统计当前AD域控制器的活动用户?

    最近公司想知道某台AD域控制器上当前连接了多少活动用户? 此前个人只知道以下不是非常完善且统计起来比较麻烦的方法: 方法1:查看共享会话数.(不完全准确) 方法2:查看当前的DNS记录.(这种方法统计 ...

  3. AD域-让共享目录只显示用户有权限访问的文件夹

    问题: 在AD域中,我们一般都会用到共享,如果有很多部门,我们可能还会按部门.职位配置权限.比如CSD,IT,PA等,但文件夹一多,用户看着就头大,而且用户没权限访问的文件夹误点击进去还会提示无权限访 ...

  4. AD域的安装(在Windows Server 2003中安装Active Directory)

    在Active Directory中提供了一组服务器作为身份验证服务器或登录服务器,这类服务器被称作域控制器(Domain Controller,简称DC).建立一个AD域的过程实际就是在一台运行Wi ...

  5. AD域内DNS服务器如何解析公网域名

    原创地址:http://www.cnblogs.com/jfzhu/p/4022999.html 转载请注明出处 AD域内需要有DNS服务器,用于解析域内的计算机名,但是域内的计算如何解析公网的域名呢 ...

  6. AD域登录验证

    AD域登录验证 作者:Grey 原文地址:http://www.cnblogs.com/greyzeng/p/5799699.html 需求 系统在登录的时候,需要根据用户名和密码验证连接域服务器进行 ...

  7. 解决服务器SID引起虚拟机不能加入AD域用户,无法远程登录的问题

    最近在公司搭建AD域控制器,发现无法在计算机真正添加域用户,也就是添加的用户虽然可以在本地登录,但是无法远程登录,尝试多种方法都无法解决,而最终原因居然是虚拟机导致的服务器的SID冲突.本文记录下该问 ...

  8. AD 域账号登录

    域服务数据读写,有俩种模式 1.轻量级的数据读取 _domain是服务器的域名 获取连接PrincipalContext pc = new PrincipalContext(ContextType.D ...

  9. AD域修改组策略

    如果我们的计算机加入AD域之后,修改安全策略时不能用本地策略来修改.具体修改方法: .Start(开始)–Programs(程序)–Administrative Tools(管理工具)–Group P ...

随机推荐

  1. gitlab 集成Jenkins

    项目:使用git+jenkins实现持续集成 开始构建  General  源码管理 我们安装的是Git插件,还可以安装svn插件  我们将git路径存在这里还需要权限认证,否则会出现error  我 ...

  2. CentOS7.3环境下源码安装httpd

    CentOS7.3环境下源码安装httpd 本文在CentOS7.3下,源码安装apache服务httpd2.4. 1.下载好源码安装包 [root@localhost ~]#ll total 625 ...

  3. tornado 异步

    引言 注:正文中引用的 Tornado 代码除特别说明外,都默认引用自 Tornado 4.0.1. tornado.gen 模块是一个基于 python generator 实现的异步编程接口.通过 ...

  4. json2.js 序列化 和反序列化 转

    http://www.cnblogs.com/youring2/archive/2013/03/01/2938850.html json2.js的源码地址: https://github.com/do ...

  5. ADO.NET json数组多条记录执行在DAL层循环(执行存储过程)

    public int UpdateRegdate(tj_book_patient regdatejson) { int temp; SqlParameter[] ps = new SqlParamet ...

  6. H5 页面在微信端的分享

    微信分享,咋一看好像很复杂,实则非常简单.只需要调用微信官方出的微信jssdk,加上些许配置,就可以实现h5页面在微信上的分享,官方文档地址为: https://mp.weixin.qq.com/wi ...

  7. 【转】Entity Framework Extended Library (EF扩展类库,支持批量更新、删除、合并多个查询等)

    E文好的可以直接看https://github.com/loresoft/EntityFramework.Extended 也可以在nuget上直接安装这个包,它的说明有点过时了,最新版本已经改用对I ...

  8. Qt一步一步实现插件通信(附源码)

      前一章已经实现了主程序调用加载插件功能,这一章描述主程序和插件间通信功能 说道Qt的通信必须要了解信号和槽的机制原理,这里不做论述,不清楚的同学去看看信号和槽机制 不废话直接上步骤,在上一章的基础 ...

  9. Spring控制反转(依赖注入)的最简单说明

    1.常规方式实现实例化 1.1已有角色如下: 一个接口Interface,两个接口实现类InstatnceA.InstanceB,一个调用类User 1.2当前实例化InstanceA如下: Inte ...

  10. windows7安装教程(vmware)

    这步是正确安装windows的关键,如果不设置那么安装时将不能识别出磁盘,造成安装不成功. 选择No进行自定义修饰,主要是保证C盘大小合适,其他盘可在安装完成之后再调整. 后续安装步骤全自动,完全不用 ...