-
-
Notifications
You must be signed in to change notification settings - Fork 5.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
通过curl命令向/dav上传文件时,如果未指定后面的路径,会导致误删除存储中的所有文件。 #3569
Comments
Thanks for opening your first issue here! Be sure to follow the issue template! |
还是有点问题,我再补充一下。
升级到新版本之后,上面那个case已经修复了。 但是我试了下另外一个case,我在挂载的根路径Downloads下面,建了个test目录,再在下面建了个文件test.txt。
然后尝试往这个test目录上传文件,如果后面跟上了/,则正常上传到test目录中。
所以感觉本质问题应该是如果存在与上传文件名同名的会覆盖(不论文件还是目录)。 我怕是我有什么误解,可能webdav本身就是这样工作的。于是我试了一下apache的webdav的行为,发现它的行为是如果是同名文件则会覆盖,如果是同名目录则不会覆盖,结果如下。
|
你这本身就是非法行为,正常的webdav client都不会这么做,因为webdav put 后面的path本来就应该是完整的路径且包含上传的文件名。 你put http://localhost:5244/dav/test 的时候就会解析为,向/目录上传一个名为test的文件 |
好吧😮💨 我有个使用场景比较特殊,在服务器之间做文件交换,就是用curl去上传/下载。 |
Please make sure of the following things
alist
and not something else(such asDependencies
orOperational
).Alist Version / Alist 版本
v3.11.0
Driver used / 使用的存储驱动
LocalStorage
Describe the bug / 问题描述
通过curl命令向/dav上传文件时,如果未指定后面的路径,会导致误删除存储中的所有文件。
Reproduction / 复现链接
当指定了文件在webdav存储的存放路径/或者路径和文件名/config.json时工作正常
但如果没有正确指定,只是前台报405 Method Not Allowed错误,后台没有报错。而实际上会删除存储下的所有文件。
我挂载的根路径是Downloads目录,被清空了,好在没有什么很重要的东西。
Logs / 日志
No response
The text was updated successfully, but these errors were encountered: