websvn的安装配置
时间:2010-05-06 来源:yeahilly
1 | websvn的安装配置 |
|
一、基本配置 1、下载websvn:地址:http://websvn.tigris.org/svn/websvn/tags/ 用户名:guest,密码为空。 然后用svn check out最新版本。 2、本文部署的是websvn2.0,假设您的svn、apache、php都已部署好。 3、进入websvn下的include目录,改名:distconfig.php-->config.php 4、编辑config.php,更改如下几项: $config->parentPath("/var/svn/repos"); #$config->useMultiViews(); //注释掉此行 $config->useEnscript(); $config->expandTabsBy(4); $config->setInputEncoding("gb2312"); $config->setOutputEncoding("gb2312"); 5、可能还需要编辑wsvn.php(websvn根目录下): $locwebsvnreal = ""; 6、至此,websvn可以使用了。 二、自定义调整格式 如果你觉得版面不舒服,需要调整,或者添加自己的东西,那可以调整如下相关文件: 1、templates/BlueGrey/directory.tmp 目录文件列表格式,将含“<b> [lang:PATH]</b>”的这一行的width=100%改为90%,将含“<b>[lang:LOG]</b& gt;”的行指定宽度width=80。 2、templates/BlueGrey/header.tmpl 页面的页头 3、templates/BlueGrey/index.tmpl 页面的中间内容 4、templates/BlueGrey/footer.tmpl 页面的页尾 5、templates/BlueGrey/.tmpl 注意:对其中中括号[]括起来的部分不要随便调整。 三、权限认证 用上面配置完之后,svn库就任何人都可以通过websvn进行访问了,要想进行访问限定,需要做如下配置: 1、编辑config.php文件: $config->useAuthenticationFile('/var/svn/repos/access');//指向您的svn 权限控制文件 注意:配置完这个后websvn的列表就一个都出不来了。 2、配置apache的httpd.conf文件: 本文来自http://www.scmbbs.com, 完整帖子请看:http://www.scmbbs.com/cn/svntp/2007/11/svntp1.php
©本文归 xuejiang 和本论坛(SCMbbs.com)共同所 有, 任何转载均需注明出处 |
|
|
|
作 者:xuejiang 2007-11-05 09:42 |
3 | 回复:websvn的安装 配置 |
|
三、权限认证 用上面配置完之后,svn库就任何人都可以通过websvn进行访问了,要想进行访问限定,需要做如下配置: 1、编辑config.php文件: $config->useAuthenticationFile('/var/svn/repos/access');//指向您的svn 权限控制文件 注意:如果access文件指向错误,配置完这个后websvn的列表就一个都出不来了。 2、配置apache的httpd.conf文件: 增加一个目录控制节点/wsvn/ 或者 /WebSVN/(根据你的url),写法与svn控制节点基本一样,如: <Location /wsvn/> AuthType Basic AuthName "subversion repository" AuthUserFile /home/svn/repos/passwd #svn的用户密码文件。 Satisfy All Require valid-user </Location> 注意:Satisfy All这个写法,以及要指定AuthUserFile,但不要指定AuthzSVNAccessFile(因为已经在config.php中指定了)。 3、重启apache。访问时就会弹出对话框让你输入用户密码,表明权限已经配置好。配置权限后,对于无权访问的目录,websvn不会列出来。 四、配置multiview 你可能对地址栏的地址很不满意,希望一种更自然的表达方式,能反应svn结构。 则: 1、编辑config.php,去掉下面行的注释: $config->useMultiViews(); //去掉注释 2、编辑apache的httpd.conf文件,增加如下节点: <Directory "/home/svn/htdocs/index"> #websvn的安装目录 Options Indexes FollowSymLinks Options MultiViews AllowOverride None Order allow,deny Allow from all </Directory> 修改如下行,使之这样: DirectoryIndex index.html index.html.var wsvn.php index.php (即将wsvn.php放到index.php前面,使得系统默认下先运行wsvn.php) 3、重启apache。这时你就可以通过如下url访问了:http://localhost/wsvn/project1/module1 的样子。 本文来自http://www.scmbbs.com , 完整帖子请看:http://www.scmbbs.com/cn/svntp/2007/11/svntp1.php
©本文归作者和本论坛(SCMbbs.com)共同所有, 任何转载均需注明出处 |
|
|
|
作 者:xuejiang 2008-09-22 11:58 |
4 | 回复:websvn的安装 配置 |
|
五、高亮语法显示(可选): 如果没有安装语法高亮显示程序,默认下只对php做高亮显示。 建议安装GNU Enscript高亮显示程序包,官方下载:http://www.iki.fi/~mtr/genscript/ 按默认路径安装好后,请配置: include/config.php文件,找到$config->setEnscriptPath('/usr/local/highlight /')在此指定你的Enscript安装路径(默认安装在/usr/local/bin/下);并且确保如下语句没有被注释掉: $config->useEnscript(); 修改保存后就生效了。 安装Enscript后可以在websvn中直接浏览各代码文件。如果你想定义某些特殊后缀也用语法高亮显示,则增加一行代码进行指定,如: $extEnscript['.inc'] = 'php'; 这句代码指定了 inc文件为php文件,这样websvn就可以用php的语法对inc文件进行高亮显示了。 在config.php中还可以自定义显示类型,如: 如果websvn不能识别png为图片文件,则增加如下一行: $contentType['.png'] = 'image/png'; 配置后就可以直接点击查看了。 或者你可以直接在include/setup.php文件相应位置修改。 六、中文乱码问题解决: 在websvn中浏览中文目录文件时,可能会遇到乱码问题,乱码可能如下格式:?\229?\138?\159?\232?\131? \189 ?\229?\136?\151?\232?\161?\168 原因:服务器的svn程序不支持中文,用svn list http://**** 中文文件时,出来的结果是乱码的。websvn并没有对输入做特殊处理,而是直接采用svn list命令运行的结果,如果svn list结果是乱码,那么在websvn中显示出来的也是乱码。 解决:最根本解决办法是配置服务器,使得svn程序支持乱码。如果无法实现,则可以修改websvn的如下程序进行特殊处理: 分析这些字符的特点,发现都小于255,显然是十进制表示的utf-8编码。但我们urlencode出来的utf-8是十六进制的,因此需 要将其转换为16进制,在用urldecode函数进行逆转就可以了。 修改websvn/include/svnlook.php文件,找到funtions dirContents($path, $rev = 0)函数, 发现其是在约372行的$output = runCommand(***)这一句运行了svn list命令,并在下一行对结果$output做了简单处理: foreach($output as $entry) { //解决中文乱码问题,判断是否包含了2个“?\”字符,是则将它转化为%,并由10进制转化为16进制,在urldecode。 if(substr_count($entry,'?\\')>1) { $pattern = '/\?\\\(\d{3})/i'; preg_match_all($pattern,$entry,$out); foreach($out[0] as $key =>$bitde) { $hexbit=dechex($out[1][$key]); $entry=str_replace($bitde,'%'.$hexbit,$entry); } $entry = urldecode($entry); } if ($entry != "") $tree[] = $entry; } 增加了这几行后,中文就能正常显示了。 本文来自 http://www.scmbbs.com , 完整帖子请看:http://www.scmbbs.com/cn/svntp/2007/11/svntp1.php
©本文归作者和本论坛(SCMbbs.com)共同所有, 任何转载均需注明出处 |
|
|
|
作 者:xuejiang 2009-03-26 18:03 |
5 | 回复:websvn的安装 配置 |
|
错误信息如下: Fatal Error[8] Array to string conversion (@line 261 in file E:\web\svnmanager\svnmanager\RepositoryModule\UserPrivilegesEditPage.php). Debug Backtrace#1 -- pradoErrorHandler(...)#2 UserPrivilegesEditPage.php:261 -- substr_count(...)#3 TControl.php:419 -- UserPrivilegesEditPage->onLoad(...)#4 TPage.php:1079 -- TControl->onLoadRecursive(...)#5 TPage.php:955 -- TPage->onLoadRecursive(...)#6 TApplication.php:483 -- TPage->execute()#7 index.php:5 -- TApplication->run() 本篇文章来源于PHP论坛原文链接:http://bbs.php.cn/viewthread.php?tid=28465&extra=page%3D1&frombbs=1 |
相关阅读 更多 +
排行榜 更多 +