您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > SVN服务端安装和配置
所有资料来源于|TortoiseSVN下载安装配置使用技术交流社区SVN服务端安装和配置1.Windows环境下基于Apache的SVN服务器安装及配置1.1安装1.1.1安装Apache(1)下载Apache地址注意:Apache低于2.0.54的Windows版本的存在编译问题,低于2.0.54的版本不能与Subversion1.2一起工作。2.2.X目前不能很好支持SVN1.4.3。当前建议下载Apache2.0.59(2)安装下载完成后运行apache_2.0.59-win32-x86-no_ssl.msi,根据提示进行操作。遇到系统要求输入SERVER的URL时,如果你的服务器没有DNS名称,请直接输入IP地址。注意:如果你已经有了IIS或其他监听80段口的程序,安装会失败,如果发生这种情况,直接到程序的安装目录\ApacheGroup\Apache2\conf,打开httpd.conf。编辑文件的Listen80为其他可用的端口,例如Listen81,然后重新启动-这样就不会那个问题了。(3)检查安装完成后浏览若成功,可看到apache页面。1.1.2安装Subversion(1)下载Subversion地址:=91(2)安装运行svn-1.4.3-setup.exe安装程序,并根据指导安装,如果Subversion认识到你安装了Apache,你就几乎完成了工作,如果它没有找到Apache服务器,你还有额外的步骤。(3)后续步骤1从C:\ProgramFiles\Subversion\bin中将mod_authz_svn.somod_dav_svn.so复制到C:\ProgramFiles\ApacheGroup\Apache2\modules下intl3_svn.dlllibdb*.dllC:\ProgramFiles\ApacheGroup\Apache2\bin下步骤2找到C:\ProgramFiles\ApacheGroup\Apache2\conf\httpd.conf文件去掉如下几行的注释(删除'#'标记):#LoadModuledav_fs_modulemodules/mod_dav_fs.so#LoadModuledav_modulemodules/mod_dav.so将下面几行添加到LoadModule部分的最后。LoadModuledav_svn_modulemodules/mod_dav_svn.soLoadModuleauthz_svn_modulemodules/mod_authz_svn.so1.1.3安装TortoiseSVN(可选)1.2配置1.2.1配置服务编辑c:\programfiles\apachegroup\apache2\conf\httpd.conf文件,添加下面代码。Location/svn/DAVsvnSVNListParentPathon#SVNPathAuthzoffSVNParentPathC:\svndata#SVNIndexXSLT/svnindex.xsl#SSLRequireSSLAuthTypeBasicAuthNameSubversionrepositoriesAuthUserFileC:\svndata\passwdAuthzSVNAccessFileC:\svndata\AuthzSVNAccessFile#LimitExceptGETPROPFINDOPTIONSREPORT#Requirevalid-user#/LimitExcept#SatisfyAnyRequirevalid-user/LocationSoc使用中Location/svn/DAVsvnSVNListParentPathonSVNParentPathd:\svnAuthTypeBasicAuthNameSubversionrepositoriesAuthUserFiled:\svn\passwdAuthzSVNAccessFiled:\svn\svnaccessfileRequirevalid-user/Location备注:Location/svn/可列出C:\svndata下的版本库,若为Location/svn则不能访问下的项目只能这样访问,如说明设置解释Location/svn意思是Subversion版本库的URL是告诉Apache是哪个模块响应那个URL的请求-此刻是Subversion模块。SVNListParentPathon对于Subversion1.3或者更高版本,这个指示表示显示所有SVNParentPath下的版本库。SVNParentPathD:\SVN告诉Subversion需要查看的版本库位于D:\SVN之下SVNIndexXSLT/svnindex.xsl使用它可以在用浏览器浏览时更好看。AuthTypeBasic激活基本认证,就是用户名/密码AuthNameSubversionrepositories用来说明何时弹出要求用户输入认证信息的认证对话框AuthUserFilepasswd指定使用的认证密码文件AuthzSVNAccessFile位置Subversion版本库的访问控制文件的路径Requirevalid-user指定只有输入了正确的用户/密码的用户可以访问URL1.2.2建立版本库与此配置对应,需要在C驱动器建立目录svn,其中可能包含多各项目得代码版本库,假设存在proj1、proj2、proj3,并已经建立了版本库。例如svn-win32-1.4.3\bin\svnadmincreate--fs-typefsfsc:\svndata\proj11.2.3设置密码文件在路径c:\programfiles\apachegroup\apache2下运行bin\htpasswd-cpasswdusername可在c:\programfiles\apachegroup\apache2创建passwd文件,可将它移动到其它位置,但要和AuthUserFile的配置一致。此后添加用户,使用如下命令:bin\htpasswdpasswdusername删除用户,使用如下命令:bin\htpasswd-Dpasswduser1.2.4设置权限文件用文本编辑器在AuthzSVNAccessFile所指定的路径下生成名为svnaccessfile的文件,注意名称与配置文件一致,此处不使用扩展名。编辑一下内容:[groups]admin=lds[/]*=r@admin=rwdangerman=[proj1:/]@admin=rw[proj2:/]@admin=r[proj3:/]@admin=基本含义是根目录下任何人有读权限,admin组有读写权限;admin对proj1读写权限对proj2有读权限,对proj3没有任何权限。备注:如果有中文路径,那要把文件存成UTF8格式1.3扩展1.3.1为Apache启用SSL(1)将mod_ssl_etc.rar中的mod_ssl.so拷到Apache的modules目录、openssl.exe、libeay32.dll、ssleay32.dll拷到bin目录、conf/ssl.conf拷到conf目录,在Apache的conf目录中用文本编辑器打开ssl.conf将下面这些行用#注释掉:DocumentRootc:/apache/htdocsServerName@example.comErrorLoglogs/error_logTransferLoglogs/access_log(2)修改SSLCertificateFileconf/ssl.crt/server.crt为SSLCertificateFileconf/ssl/my-server.cert(3)修改SSLCertificateKeyFileconf/ssl.key/server.key为SSLCertificateKeyFileconf/ssl/my-server.key(4)修改SSLMutexfile:logs/ssl_mutexSSLMutexdefault(5)删除以下两行(如果有)IfDefineSSL/IfDefine(6)打开Apache配置文件(httpd.conf),去掉这行的注释#LoadModulessl_modulemodules/mod_ssl.so(7)将压缩包openssl.cnf.rar中openssl.cnf文件拷贝到C:\programfiles\apachegroup\apache2\bin下。然后C:\programfiles\apachegroup\apache2在用以下命令创建证书bin\opensslreq-configbin\openssl.cnf-new-outmy-server.csrbin\opensslrsa-inprivkey.pem-outmy-server.keybin\opensslx509-inmy-server.csr-outmy-server.cert-req-signkeymy-server.key-days4000bin\opensslx509-inmy-server.cert-outmy-server.der.crt-outformDER这时在Apache目录下创建了一些文件(my-server.der.crt,my-server.csr,my-server.key,.rnd,privkey.pem,my-server.cert)。将这些文件拷贝到目录conf/ssl如果目录ssl不存在,你必须先创建一个。(8)可以选择在location语句块中添加SSLRequireSSL语句强制使用ssl最后重启一下Apache服务SSL补充1.首先要生成服务器端的私钥(key文件):opensslgenrsa-des3-outserver.key1024运行时会提示输入密码,此密码用于加密key文件(参数des3便是指加密算法,当然也可以选用其他你认为安全的算法.),以后每当需读取此文件(通过openssl提供的命令或API)都需输入口令.如果觉得不方便,也可以去除这个口令,但一定要采取其他的保护措施!去除key文件口令的命令:opensslrsa-inserver.key-outserver.key2.opensslreq-new-keyserver.key-outserver.csr-configopenssl.cnf生成CertificateSigningRequest(CSR),生成的csr文件交给CA签名后形成服务端自己的证书.屏幕上将有提示,依照其指示一步一步输入要求的个人信息即可.3.对客户端也作同样的命令生成key及csr文件:opensslgenrsa-des3-outclient.key1024opensslreq-new-keyclient.key-outclient.csr-configopenssl.cnf4.CSR文件必须有CA的签名才可形成证书.可将此文件发送到verisign等地方由它验证,要交一大笔钱,何不自己做CA呢.opensslreq-new-x509-keyoutca.key-outca.crt-configopenssl.cnf5.用生成的CA的证
本文标题:SVN服务端安装和配置
链接地址:https://www.777doc.com/doc-1580419 .html