SVNParent(DAV)位于同一服务器上的不同路径

SVNParent(DAV)位于同一服务器上的不同路径

目前,我们在 svn.company.com 上有一个 Subversion 服务器,供内部(偶尔也供外部)使用。目前,存储库位于 /svn/[project](通过 SVNParentPath)。但是,管理层希望它们也可以在 /[project] 上使用。我似乎能够使用一些 mod_rewrite 指令使其正常工作:

#Don't redirect (internally, note the PT (passthrough)) any trac or admin pages 
RewriteCond %{REQUEST_URI} !^/trac.*$
RewriteCond %{REQUEST_URI} !^/admin.*$
RewriteCond %{REQUEST_URI} !^/svn.*$
RewriteRule ^/(.*)$ /svn/$1 [PT,NS,QSA]

这似乎有效,但在签出或执行任何其他实际 SVN 操作时会失败。我的理论是 DAV 将其 URL 报告为 /svn/[project],当它与其请求的 URL /[project] 不匹配时,客户端会中止。

您将如何解决这个问题?

答案1

你不能只使用两者吗?

<Location "/">
....setup for management
SVNParentPath /path/to/repos
</Location>

<Location "/svn">
...stuff for /svn/project
SVNParentPath /path/to/repos
</Location>

相关内容