您的位置:首页 > 运维架构 > Apache

visualSVN server绿化策略 摆脱两个apache的尴尬

2014-05-09 17:41 113 查看
SVN就不多说了,非常好用的版本控制!安装也非常简单。我的开发环境是WINDOWS,方案是VisualSVN ServerTortoiseSVN,这个安装起来简直超方便!不过有一点非常严重的问题就是官方的VisualSVNServer的安装包里面自带apache服务器,安装的时候不能与本机原有apache(或IIS)端口冲突,这样我的最初的情况就变成机器里有两个apache,4个httpd.exe进程,一下增加了几十M的内存开销,要知道偶的机子本来就很慢,我的想法就是把他们集成到一起,因为visualSVNserver的MMC管理控制台太亲切了,离不开了,虽然SVN已经有更为强大的命令行操作!减少httpd.exe进程为两个,端口只监听8080就好了。

看网上的做法是先安装visualsvn,再将apache重新配置,我觉得这个内置的精简版的apache是绝对不全的,所以我将SVN装到我原有的APM环境中,再安装visualSVN SERVER来管理它!目的很单纯,减少内存开销和端口占用。

SVN的安装不多说了,官方就有很详细的安装教程!这里我用的是最新的
svn-win32-1.4.6.zip

后面就是绿化visualSVN SERVER

将visualSVN SERVER官方的安装包里头的文件全部提取,经过分析,我们得到下面的甚为宝贵的注册表文件和后面bin目录中的文件(注意我已经将部分文件更新为svn 1.4.6版)!
QUOTE:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\VisualSVN]

[HKEY_CURRENT_USER\Software\VisualSVN\VisualSVN Server]

"MenuShortcut"="1"

"Adm_Tools_MenuShortcut"="1"

[HKEY_LOCAL_MACHINE\SOFTWARE\VisualSVN]

[HKEY_LOCAL_MACHINE\SOFTWARE\VisualSVN\VisualSVN Server]

"RepositoriesRoot"="F:\\Repositories\\"

"ServerName"="localhost"

"ServerPort"="8080"

"SSLServerPort"="8443"

"UseSSL"="0"

"InstallDir"="D:\\myserver\\VisualSVN Server\\"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{08B017E8-47AD-4D1B-A928-94FFD77E9950}]

About={2FC11162-83EE-47ED-87DA-490D7402230C}

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{08B017E8-47AD-4D1B-A928-94FFD77E9950}]

NameString=VisualSVN Server Manager

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\SnapIns\{08B017E8-47AD-4D1B-A928-94FFD77E9950}\Extension]

@=Namespace

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MMC\NodeTypes\{476E6449-AAFF-11D0-B944-00C04FD8D5B0}\Extensions\Namespace]

{08B017E8-47AD-4D1B-A928-94FFD77E9950}=VisualSVN Server
里面的设置都是一目了然的,重点就是HKEY_LOCAL_MACHINE\SOFTWARE\VisualSVN\VisualSVN Server键下面,其他的都不需要修改!,然后注册dll文件 regsvr32 /s Manager.dll,bin的目录没有了,文件的部署变成这样的:
QUOTE:

D:\myserver\VisualSVN Server 的目录

2007-12-23 00:25 <DIR> .

2007-12-23 00:25 <DIR> ..

2007-12-20 16:29 131,149 libapr-1.dll

2007-12-20 16:29 36,952 libapriconv-1.dll

2007-12-20 16:29 172,118 libaprutil-1.dll

2007-12-20 16:29 1,073,152 libeay32.dll

2007-11-30 00:26 274,432 libhttpd.dll

2006-12-02 06:03 1,869 Microsoft.VC80.CRT.manifest

2006-12-02 14:22 479,232 msvcm80.dll

2006-12-02 06:03 548,864 msvcp80.dll

2006-12-02 06:03 626,688 msvcr80.dll

2007-12-20 16:29 204,800 ssleay32.dll

2007-10-09 22:48 28,871 VisualSVN Server.msc

2007-11-30 00:19 60,416 zlib1.dll

2007-12-23 00:45 2,064 visualSVN.reg

2007-12-23 00:38 578 setup.bat

2007-12-20 16:29 69,716 intl3_svn.dll

2007-12-20 16:29 802,816 libdb44.dll

2007-12-20 16:29 1,019,980 svn.exe

2007-12-20 16:29 528,470 svnadmin.exe

2007-12-20 16:29 499,808 svndumpfilter.exe

2007-12-20 16:29 520,276 svnlook.exe

2007-12-20 16:29 561,238 svnserve.exe

2007-12-20 16:29 712,788 svnsync.exe

2007-12-20 16:29 368,730 svnversion.exe

2007-12-23 00:33 23 uninstall.bat

2007-12-23 01:07 311 vsvnvars.bat

2007-11-30 01:06 491,520 Manager.dll

26 个文件 9,216,861 字节

2 个目录 9,841,033,216 可用字节
路径和上面的注册表文件是对应的,经过这些操作以后,就可以顺利的使用visualSVN SERVER了,不过这个控制台里面的apache服务器控制菜单不能正常使用了,解决的方法是将apache注册为服务的时候名称取为 VisualSVNServer就可以了,语句范例:

D:\myserver\Apache2\bin\httpd.exe -k install -n VisualSVNServer

这样再重新打开visualSVN SERVER的控制台,就可以控制apache的开始、停止以及重启了。

顺便提及:当使用TortoiseSVN连接服务器长时间假死,并且apache的错误日志里有类似:

[Sat Dec 22 15:49:30 2007] [error] [client 127.0.0.1] XML parser error (at end). status=20014

这样的错误记录,问题是出在卡巴斯基 6.0,将TortoiseSVN的bin目录下的TortoiseProc.exe文件添加到卡巴的信任程序里边,即可解决,偶就碰到这个很郁闷的问题,搞了半天才搞定。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: