【问题标题】:Moving file on WEBDAV server returns 404 even though file exists即使文件存在,在 WEBDAV 服务器上移动文件也会返回 404
【发布时间】:2019-02-08 00:15:56
【问题描述】:

我无法通过 webdav 来回移动我们服务器上的特定文件,也找不到问题的根源。一些例子:

作品:README.md -> README1.md -> README.md

作品:db.xml.gz -> db.xml.bla -> db.xml.gz

不起作用:db.xml.gz -> db.xml.gz.lock -> db.xml.gz(结果为404

cadaver试了一下:

dav:/webdav/User/> ls
Listing collection `/webdav/User/': succeeded.
        .htaccess                            117  Jun  6  2018
        db.xml.gz                            635  Feb  7 21:36
dav:/webdav/User/> mv db.xml.gz db.xml.gz.lock
Moving `/webdav/User/db.xml.gz' to `/webdav/User/db.xml.gz.lock':  succeeded.
dav:/webdav/User/> mv db.xml.gz.lock db.xml.gz
Moving `/webdav/User/db.xml.gz.lock' to `/webdav/User/db.xml.gz':  failed:
404 Not Found
dav:/webdav/User/> ls
Listing collection `/webdav/User/': succeeded.
        .htaccess                            117  Jun  6  2018
        db.xml.gz.lock                       635  Feb  7 21:36
dav:/webdav/User/> mv db.xml.gz.lock db.xml
Moving `/webdav/User/db.xml.gz.lock' to `/webdav/User/db.xml':  failed:
404 Not Found
dav:/webdav/User/> mv db.xml.gz.lock db.bla
Moving `/webdav/User/db.xml.gz.lock' to `/webdav/User/db.bla':  succeeded.
dav:/webdav/User/> mv db.bla db.blubb
Moving `/webdav/User/db.bla' to `/webdav/User/db.blubb':  succeeded.
dav:/webdav/User/> mv db.blubb db.bla
Moving `/webdav/User/db.blubb' to `/webdav/User/db.bla':  succeeded.

如果源与目标相同加上额外的文件结尾,它似乎会失败。我读到一些 Windows 服务器跳过导致问题的文件结尾,但这是一台 Linux 机器。 任何想法都非常感谢!

【问题讨论】:

  • 您的主机是 Windows 机器吗? (不是您运行这些命令的服务器。)如果是这样,可能是您提到的 Windows 文件扩展名问题正在困扰您?
  • 不,主机也是Linux。

标签: apache http https webdav cadaver


【解决方案1】:

我找到了this bug report 的解决方案:在 apache 主机配置中禁用 MultiViews 解决了这个问题。 MultiViews 基本上阻止了我重命名某些文件扩展名。

【讨论】:

    猜你喜欢
    • 2019-10-13
    • 2013-07-07
    • 1970-01-01
    • 2020-06-08
    • 1970-01-01
    • 1970-01-01
    • 2016-11-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多