我在Windows服务器上安装了VisualSVN服务器,为几个存储库提供服务.
由于VisualSVN服务器内置的Web查看器是一个简约的subversion浏览器,我想在我的存储库之上安装WebSVN.
然而,问题是我似乎无法使身份验证工作.理想情况下,我希望我在VisualSVN中指定的当前存储库身份验证与WebSVN一起使用,因此虽然我在WebSVN中看到了所有存储库名称,但如果没有正确的凭据,我实际上无法浏览它们.
通过访问此google查询中最顶层链接的缓存副本,您可以看到我迄今为止发现的看起来很有前景的内容.
(主要的博客页面似乎已被破坏,我所指的最顶层页面的域名是-wizzard.de)
在那里我发现了一些我可以在WebSVN中的一个php文件上添加的php函数.我在那里进行了修改,但我所做的就是让WebSVN向我询问用户名和密码,无论我输入什么,它都不会让我进去.
不幸的是,php和apache对我来说很大程度上是黑魔法.
那么,有没有人成功地将WebSVN与VisualSVN托管的存储库集成在一起?
我使用VisualSVN服务器进行了WebSVN身份验证,尽管我自己进行了大量的黑客攻击/试错定制.
我是这样做的:
如果您还没有,请通过下载zip文件并通过在线php手动安装说明手动安装PHP.我将PHP安装到C:\ PHP
将websvn文件夹解压缩到C:\ Program Files\VisualSVN Server\htdocs \
完成配置websvn目录的步骤,即将configdist.php重命名为config等.我的存储库位于C:\ SVNRepositories中,因此要配置身份验证文件,我将config.php行设置为:$ config-> useAuthenticationFile( 'C:/ SVNRepositories/AuthZ的'); //全局访问文件
将以下内容添加到C:\ Program Files\VisualSVN Server\conf\httpd-custom.conf:
# For PHP 5 do something like this: LoadModule php5_module "c:/php/php5apache2_2.dll" AddType application/x-httpd-php .php # configure the path to php.ini PHPIniDir "C:/php"DirectoryIndex index.html index.php Options FollowSymLinks AuthType Basic AuthName "Subversion Repository" Require valid-user AuthUserFile "C:/SVNRepositories/htpasswd" AuthzSVNAccessFile "C:/SVNRepositories/authz" SVNListParentPath on SVNParentPath "C:/SVNRepositories/"
这对我有用,而websvn只会显示那些授权给定用户的目录.请注意,为了使其正常工作,您必须为每个人提供"主级"访问权限,然后禁止对某些用户访问某些子目录.例如,我有一个用户没有主要级别访问权限,但可以访问子级别.不幸的是,这个人在websvn中看不到任何东西,即使他直接链接到filedetails.php获取他有权查看的文件.在我的情况下,这并不是什么大不了的事,因为我不希望他无论如何都要访问websvn,但这是你想知道的.
此外,这会将服务器设置为ssl连接,因此一旦设置完毕,地址将为和https://地址,而不是常规的http://.