奇怪的 Apache Webdav 情况(OSX 可以连接,Ubuntu 则不能)

奇怪的 Apache Webdav 情况(OSX 可以连接,Ubuntu 则不能)

所以基本上我的情况是,我在另一台机器上的 Linux 上有一个 Apache 2.2 网络服务器,并且我已将其配置为提供 webdav 服务。

现在,奇怪的是,我可以使用“连接到服务器”对话框在 Mac 上顺利访问服务器(甚至可以通过连接移动 5GB 的文件)。在我的 Ubuntu 桌面上,cadaver 也可以连接并允许我浏览。但是,当我尝试使用 Xmarks(BYOS 版本)或 GNOME“连接到服务器”对话框时,它给出了 403 Forbidden 错误。

如果这有什么不同的话,我的服务器会进行摘要身份验证。这是我的 apache2.conf 文件的一部分

<VirtualHost *:80>

         DocumentRoot "/path"

<Directory "/path">
       Dav on

       AuthType Digest
       AuthName iTools
       AuthDigestDomain "/"
       AuthUserFile /path/to/WebDavUsers

       Options None
       AllowOverride None

       <LimitExcept GET HEAD OPTIONS>
                    require valid-user
    </LimitExcept>

    Order allow,deny
    Allow from All
</Directory>

<Directory "/path/*/Public">
       Options +Indexes
</Directory>

<Directory "/path/user">
       <LimitExcept GET HEAD OPTIONS>
                    require user user
       </LimitExcept>
</Directory>

</VirtualHost>

答案1

apache 的 error_log 说了什么?

答案2

简短的回答是 gnome 对 DAV 的支持确实不太好。

遇到同样的问题后,我在 Debian 升级后重新测试,它再次正常运行。

OS X 似乎是黄金标准。在现实世界中,没有其他系统能真正发挥作用。

答案3

Wireshark可能对跟踪每个位置的请求和响应很有用 - 它曾经帮助我解决过一​​些 webdav 问题(例如 Windows 只识别'%26'而 Apache 在 dav 位置输出'&'(或者可能相反)作为&符号)。

答案4

WebDAV 在重定向和某些客户端方面可能存在一些问题 - Java DAV 库也有类似的问题。确保您的 Apache 虚拟主机块中有这样的节(或父级中)

BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "MS FrontPage" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
BrowserMatch "^gnome-vfs/1.0" redirect-carefully
BrowserMatch "^XML Spy" redirect-carefully
BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
BrowserMatch "Jakarta Commons" redirect-carefully

其定义如下:

谨慎重定向这会强制服务器在向客户端发送重定向时更加小心。这通常用于客户端在处理重定向时出现已知问题的情况。这最初是由于 Microsoft 的 WebFolders 软件存在问题而实现的,该软件在通过 DAV 方法处理目录资源的重定向时出现问题

如果它们与上述任何一项都不匹配,您可能需要添加从 XMarks 和 GNOME 看到的用户代理字符串,并将它们添加到列表中。除“Jakarta Commons”之外的所有内容都是 Red Hat Enterprise 中为 WebDAV 默认配置的。

相关内容