如何设置匿名自动版本 mod_dav_svn 服务器?

如何设置匿名自动版本 mod_dav_svn 服务器?

我想创建一个具有自动版本控制功能的 DAV SVN 服务器,该服务器没有任何访问控制。我尝试了几种变体,但最终每种变体都会遇到此错误:

"Anonymous lock creation is not allowed."

因此,作为后备选项,我想将我的 SVN 位置配置为具有默认凭据。这可能吗?有没有更好的方法来完成我想做的事情?

答案1

这有点像黑客行为,也许有更好的方法,但是......

mod_auth_tkt模块是 Apache 的单点登录解决方案。您不必关心应用程序的这一点,但有趣的是它对“访客”登录的支持。对于没有身份验证 cookie 的用户(对您来说,所有用户都是这样),您可以分配一个默认身份。配置看起来如下:

<Location /svn>
  AuthType None
  require valid-user
  TKTAuthGuestLogin on
  TKTAuthGuestUser guest
</Location>

这会将每个人都验证为“访客”用户,这应该会让 DAV 感到高兴。 注意::完全未经测试!我mod_auth_tkt一直在使用,但我还没有尝试过这种特定的配置。

答案2

如果您想向所有用户授予对您的存储库的完全访问权限,请不要在您的 apache 配置中包含安全或身份验证指令。

如果你在 www.example.com/svn 发布你的存储库,你可以使用类似这样的方法

<Location /svn>
  DAV svn
  SVNParentPath "/path/to/your/svn" #filesystem path      
</Location>

由于身份验证被禁用,所有提交都将由 apache 用户完成(通常是 www-data 或 apache)

希望对您有帮助。谢谢。

相关内容