PHP头条
热点:

SVN 1.80 + Apache2.4.4 整合 完全攻略


附:  the requested operation has failed  错误解决方案
附: Could not open the requested SVN filesystem 错误的解决方案
附 : authentication failure  和  Password Mismatch 的解决方案
  1.下载文件   注意:     客户端要和服务端版本一致   tortoisesvn 是客户端程序 需要 下载并安装即可 下载地址:  http://sourceforge.net/projects/tortoisesvn/files/?source=navbar   英文不好的可以下载一个客户端的中文插件,必须在安装好客户端安装 下载地址: http://downloads.sourceforge.net/tortoisesvn/LanguagePack_1.8.1.24570-win32-zh_CN.msi?download   subversion 是 SVN 服务端 是一个压缩包 本篇主要介绍这个压缩包的配置 下载地址: http://jaist.dl.sourceforge.net/project/win32svn/   2. 客户端 服务端 apache 的版本选择 (重要)   本篇的所有程序版本:
系统: win7-32bit
tortoisesvn: 1.8.0   subversion: 1.8.0
apache: 2.4.4 (wamp)   wamp 下载地址:   http://www.wampserver.com/en/ 
  客户端和服务端一定要版本匹配,上面已经说过.  最重要的就是 服务端要和 apache 相匹配 不然你的apache 是无法启动的 可以在下载的 subversion 里的 README.txt 查看和什么版本的服务器匹配   1: #svn 系统模块
   2:  LoadModule dav_module modules/mod_dav.so
   3:  LoadModule dav_fs_module modules/mod_dav_fs.so
   4:  #svn 自身模块
   5:  LoadModule dav_svn_module modules/mod_dav_svn.so
   6:  LoadModule authz_svn_module modules/mod_authz_svn.so

 

<2. 设置apache 和 SVN 的调用关系

   1:  <Location /svn>  
   2:  DAV svn 
   3:  SVNParentPath "D:/www/depot"
   4:  </Location>

 

第三行 设置的是SVN 仓库的位置 depot 是父目录,

可以在里面设置子目录, 这只是我的仓库位置,可以根据 需要自行设置

<3. 重启系统  附:  the requested operation has failed  错误解决方案

如果重启系统后, wamp 无法启动 查看apache 的  日志文件 apache_error.log
最后一行 提示 the requested operation has failed 

出现这种问题请检查如下几个方面 :

(1. 检查服务端 是否支持 apache 版本

(2. 检查是否引入了SVN 的 模块到 apache 的 modules 文件夹

(3. 检查是否正确的修改了环境变量

(3.检查所修改的 apache 配置文件 是否存在语法或者输入错误 

(4. 检查 是否缺少 VSN  的依赖运行环境 可以安装微软的 VC6 和 VC9 支持库 下载地址:  http://www.baidu.com/ 

(5.如果以上都操作正确 问题还没有解决,请重启电脑 ,如果重启也没有解决

可以在 cmd 中 输入以下命令 查看apache 报错的 配置所在的行,定位检查错误

httpd.exe -w -n "wampapache" -k start

wampapache 是指 apache 在系统中的服务的名称,不同的电脑可能会有不同的名称,可以在服务列表中查看

7.创建仓库

cmd  命令行 执行 : vsnadmin create d:/www/depot/maliro 

depot  是我的仓库 父目录

maliro 是我仓库下的子仓库

vsnadmin 的所有命令 可以 用 vsnadmin help 查看是

创建好的仓库:

<1. 在浏览器输入 localhost/vsn/maliro   maliro是 子仓库名

    需要注意的是 我这里 已经将 localhost 的 访问目录 指向了我所创建的 D:\www 目录, 具体情在 apache 配置文件里面修改配置项

   成功打开网页后有以下提示:

   maliro - Revision 0: /

<2. 附: Could not open the requested SVN filesystem 错误的解决方案   如果打开网页提示 Could not open the requested SVN filesystem 则表示和apache 的整合没有问题 ,但是VSN 没有找到仓库   请检查如下方面: (1.   在 apache  的配置文件中 是否正确的指定了仓库的父路径    1:
<Location /svn>
   2:  DAV svn 
   3:  SVNParentPath D:/www/depot
   4:   
   5:  AuthZSVNAccessFile "D:\www\depot\authz"
   6:  AuthUserFile "D:\www\depot\passwd"
   7:   
   8:  Satisfy Any
   9:  Require valid-user
  10:   
  11:  AuthType Basic
  12:  AuthName " Welcome to my SVN , But you need input password! (-: "
  13:  </Location>
将以前的配置 修改成以上代码   第五行 设置权限配置 文件的位置   第六行 设置密码文件的 存放位置   一般都是 存放在 仓库的父目录下   <2. 添加用户   在设置的存放权限配置的目录中 创建文件 authz 并键入以下信息
   1:  [maliro:/]
   2:  maliro = rw
maliro:/     //表示设置的用户作用于该子仓库 maliro = rw  //用键值对的形式设置用户和用户的权限 r  --> 读操作  w –> 写操作   <2.设置明文密码   在指定目录创建文件 passwd 并键入以下信息   maliro:111    // 键值对形式设置 maliro的密码为 111   <3.设置加密密码   在cmd 命令行 输入命令:  
   1:  htapache -cmb d:/www/depo/passwd maliro 111
  创建一个经过md5 方式加密的用户密码 注:  命令里的 c 参数是用来创建文件 同时创建加密用户密码 会覆盖以前的passwd 文件   最好的使用方式是指定 -mb 参数     也可以这样创建密码:  
   1:  htapache -b d:/www/depot/passwd maliro
  创建一个经过 hash 方式 加密的用户密码   <4. 附 : authentication failure  和  Password Mismatch 的解决方案   如果访问svn 服务器的时候 不停地让你输入密码, 那么查看 apache_error.log  你会发现有这样一句话 字面意思是没有权限或者口令不正确,   分析原因:  口令不正确肯定是存在一个用户,用户的密码不匹配.   解决:   (1. 检查密码文件是否存在,并且创建了指定用户的密码 (2. 检查apache的配置文件中的 VSN 配置密码文件路径是否正确 (3. 用命令行创建用户的时候是否用了这样的指令 :   错误1 :   htapache –c xxxxxxxx maliro 错误2 :   htapache xxxxxxxx maliro   可能是因为版本问题,在SVN的高级版本中 用这样的指令创建的加密用户密码 是不能被正确解密匹配的 具体情参考 指令  htapache help   <本章结束 .>   如有疑问或指正请留言   或   email : 290334962@qq.com    

www.phpzy.comtrue/php/1977.htmlTechArticleSVN 1.80 + Apache2.4.4 整合 完全攻略 附: the requested operation has failed 错误解决方案 附: Could not open the requested SVN filesystem 错误的解决方案 附 : authentication failure 和 Password Mismatch 的解决方案...

相关文章

相关频道:

PHP之友评论

今天推荐