V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
ReZer0
V2EX  ›  问与答

WebDav 对 Windows 设备是不是不太友好?

  •  
  •   ReZer0 · 2019-09-05 08:46:32 +08:00 · 10931 次点击
    这是一个创建于 1908 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近想研究下外网访问折腾了下 WebDav,不过貌似有点难折腾。(详情可以看我上一贴)

    不过上一帖我基本放弃了,因为不管怎么折腾,我还是没办法解决 Nginx 的 WebDav 实现文件写入。

    所以转头使用 Apache2 的方案,这下可以实现创建和复制文件了,但还没调试完就又发现问题了:

    1、读取文件限制,打开超过一定大小的文件时(估摸着 50M,备注:将系统某个注册表文件限制大小值调至最大也一样)无法读取(音乐、视频),potplayer 直接提示被锁定或找不到地址。(限定容量大小下的读写正常)

    2、Apache2 下相对于 Nginx 貌似会连不上,比如添加网络位置或者映射网络驱动器,在下一次系统登录的时候,必然掉线,且无法再次添加。提示“无法访问”或“输入的文件夹无效”等提示。之前调试 Nginx 时,Nginx 的连接率会好很多。

    3、以上情况均出现在 Windows,目前手机 ES 管理器一切正常!

    所以贴下 Apache2 的配置文件,这是根据一些教程(基本一样)所填写的配置: Alias /webdav /home/test <Location /webdav> DAV On AuthType Basic AuthName "share" AuthUserFile /etc/apache2/.htpasswd Require valid-user

    第 1 条附言  ·  2019-09-05 16:26:32 +08:00
    我觉得我已经找到问题所在了。
    https://answers.microsoft.com/en-us/windows/forum/all/webdav-broken-in-update-1903/1872ce50-cb88-4f21-8523-797a2742152a

    该帖子内容也是同样的情况无法进行写入,下面讨论发现貌似和 1903 版本有关。

    目前我在 Win7VM 上经过测试,可以正常写入和删除。


    锅……目前来到了 Win10 1908 上。
    17 条回复    2021-04-08 10:52:08 +08:00
    bluehr
        1
    bluehr  
       2019-09-05 09:17:53 +08:00
    我在 pc 上使用 webdav 也是很困惑,不知道是不是我姿势不对。
    1.我用 U-nas 的 webdav 能在 pc 的浏览器端使用 webdav
    2.使用群晖的 webdav,浏览器是怎么都访问不了(各种提示路径不对,或者没权限之类的)。

    但是手机端的各种 app 使用 webdav 体验还是很不错的,比如 es 文件浏览器等
    Tink
        2
    Tink  
       2019-09-05 09:26:05 +08:00   ❤️ 1
    @bluehr #1 群晖那个不支持 web 好像,我 pc 端是用 NetDrive 挂载 WebDav 的
    ReZer0
        3
    ReZer0  
    OP
       2019-09-05 10:20:28 +08:00
    @bluehr
    @Tink
    本意是想试试免下载直接执行的。因为我是用自己搭建的方式,所以配置问题略显头大。
    weyou
        4
    weyou  
       2019-09-05 11:05:21 +08:00 via Android
    曾经分析过 nginx 方案不能实现上传的原因,是因为 nginx-dav-ext-module 今还没有实现 PROPPATCH 这个 method。windows 的 webclient 会调用这个 method 来修改文件属性。
    weyou
        5
    weyou  
       2019-09-05 12:13:40 +08:00
    现在在用 nextcloud 的 webdav,完美
    narmgalaxy
        6
    narmgalaxy  
       2019-09-05 14:11:31 +08:00   ❤️ 1
    我用的是 caddy 的 webdav
    lanternxx
        7
    lanternxx  
       2019-09-05 14:26:39 +08:00   ❤️ 1
    winodws 下可以使用第三方的 webdav 客户端,类似 raidrive 什么的
    mhqschen
        8
    mhqschen  
       2019-09-05 14:37:29 +08:00
    macOS 也是这样,没法直接播放远程 NAS 上的视频。NFS 就正常
    ihciah
        9
    ihciah  
       2019-09-05 14:41:47 +08:00
    caddy 的 webdav,开了 TLS 的话 nPlayer 就连不上,很蛋疼==
    ReZer0
        10
    ReZer0  
    OP
       2019-09-05 15:43:46 +08:00
    @weyou 原来如此,看了下 Issues 貌似也有提到。感觉找到问题了……
    deorth
        11
    deorth  
       2019-09-05 16:31:33 +08:00
    我用 nginx 在公网开了个 https 的 webDAV,然后在 windows 下挂成网络驱动器。几乎没什么程序能正常使用这个盘符下的文件。基本上只能拷出来用
    ReZer0
        12
    ReZer0  
    OP
       2019-09-05 16:57:42 +08:00
    @deorth 是的,有偏方是修改注册表数值从 50M 支持到最大 4G,但是那个我不清楚是否有效。文件大于 50M 左右基本都没办法读取。
    elfive
        13
    elfive  
       2019-09-05 18:23:38 +08:00 via iPhone
    @deorth #11 群晖的 webDav server 套件,开通了之后 Win10、Win7、nPlayer ( Mac、iOS )都非常稳定。
    elfive
        14
    elfive  
       2019-09-05 18:24:29 +08:00 via iPhone
    @elfive #13 包括用 netDriver 映射为本地硬盘也很正常。
    flynaj
        15
    flynaj  
       2019-09-06 02:02:46 +08:00 via Android
    标题写反了,是 Windows 对 webdav 支持太差,我都是用 totalcmd 来用的
    linhua
        16
    linhua  
       2019-09-10 11:43:07 +08:00
    WinScp 客户端也支持 WebDAv
    hhs66317
        17
    hhs66317  
       2021-04-08 10:52:08 +08:00
    标题有些问题。。

    是 windows 上使用了 nginx 中的 webdav 不支持的方法 PROPPATCH,导致出现幺蛾子,并不是 windows 本身的问题,而其他 webdav 客户端并不用这个方法,所以使用起来没啥问题。

    我自己当前就是用的 nginx 搞的 webdav,能满足自己的基本使用,如果需要在 windows 上映射磁盘用的话,可以考虑用 RaiDrive 来搞
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1451 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 17:22 · PVG 01:22 · LAX 09:22 · JFK 12:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.