我无法通过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计算机。 任何想法高度赞赏!
答案 0 :(得分:0)
我找到了this bug report的解决方案:在apache主机配置中禁用MultiViews解决了该问题。 MultiViews基本上阻止了我重命名某些文件扩展名。