1.下载最新subversion安装(官方没有编译好的安装包,通过第三方):VisualSVN-Server-3.9.2-x64.msi
2.安装apache:httpd-2.4.38-o102q-x64-vc14.zip
3.配置http.conf
开启:
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
添加:
LoadModule dav_svn_module D:/Apache24/modules/mod_dav_svn.so
LoadModule authz_svn_module D:/Apache24/modules/mod_authz_svn.so
LoadModule authnz_sspi_module modules/mod_authnz_sspi.so
DAV svn
SVNParentPath d:/data/svn
Options None
#AuthName "SSPI Protected Place"
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
SSPIOfferBasic On
SSPIOmitDomain On
AuthzSVNAccessFile "D:/data/svn/1/conf/authz"
AuthUserFile D:/data/svn/1/conf/passwd
SSPIDomain SNDA.ROOT.CORP
SVNAllowBulkUpdates Prefer
Require valid-user
测试配置文件命令:httpd.exe -t (出现丢失vcruntime140.dll则安装vc_redist.x64.exe)
4.下载依赖包:svn-1.10.2-vc14.x64.zip mod_authnz_sspi-0.1.1a1-2.4.x-x64-vc14.zip
将对应的so添加到Apache24\modules中,将bin下文件添加到Apache24\bin中 将lib下的文件添加到Apache24\lib中
5.将步骤1中安装的C:\Program Files\VisualSVN Server\bin 下的文件全部拷贝到Apache24\bin中,注意同名不要覆盖,会导致apache不可用
6.启动svn:C:\Program Files\VisualSVN Server\bin\svnserve -d -r d:/data/svn/
7.启动apache:httpd.exe -k restart
8.注意svn服务器需要在域中,且登录用户必须属于域,域用户在域外的机器登录svn时,需要改域用户拥有登录svn服务器机器的权限(IT配置)
【注】下载地址:
svn——apache支持模块
https://www.apachelounge.com/viewtopic.php?p=36843
遇到的问题:
1.nginx偶尔出现502 问题
(110:connection timed out)while connecting to upstream
解决:
配置SVNAllowBulkUpdates Prefer
2.坑爹的问题,一直401或者tortoise卡住
解决:
mod_dav.so要放在mod_dav_fs.so上面
还有顺序关系,搞了一天。。