Subversion:通过浏览器访问时没有webdav登录



有一个Subversion服务器使用Apache作为前端。我在虚拟主机部分打开了自定义日志记录:

CustomLog /var/log/svn/webdav.log "%t %u repo:%{SVN-REPOS-NAME}e action:%{SVN-ACTION}e (%B Bytes in %T Sec)" env=SVN-ACTION

当我使用 SVN 客户端时,我可以在 webdav.log 中看到以下操作:

action:checkout-or-export
action:commit

但是,如果我使用 Web 浏览器浏览存储库,则不会记录任何内容。在访问日志中,即使我通过 ?p=revision_number 请求精确修订,也只有标准的 GET 请求(这意味着我肯定在处理dav_svn Apache 模块)

为什么会这样?使用 svn 客户端和普通浏览器行为有什么区别?

SVN 客户端正在与您的服务器进行 WebDAV 通信:他发送了 PROPFIND、PROPGET 等消息,从 SVN 存储库中检索了大量信息:上次更改修订、最后作者等。

浏览器只是询问一个GET-HTTP命令。严格来说,这不是真正的SVN操作。您只是查看存储库的某些部分。您可以下载单个文件或列出目录。但是你不能在SVN方面做任何有意义的事情。

因此,这不会进入日志文件,因为没有与之对应的SVN操作。

最新更新