远程文件访问需求
家里的Nas里面有音乐、电影、动漫啥的需要在外面进行访问,如果是单纯的视听,那么解决方法非常多,docker就可以部署很多成品的影音娱乐应用,再对端口进行穿透即可访问。但我这里有个需求,有些动漫需要用第三方客户端加载弹幕才看的输出,这个第三方客户端也没有对远程视频文件进行支持,所以还是选择了将文件挂载到本地环境的方法。
像SMB、FTP、NFS、Webdav都是解决这个问题的方法,但除了Webdav之外都有个问题,这些协议并非使用一个固定的端口,在速度上,似乎Webdav也是最好的选择(求大神解答关于NFS,SMB,WebDAV问题 - 知乎 (zhihu.com)),于是最终决定使用WebDav作为远程访问协议。
出现问题

无法访问(非真实ip)
设置的过程还算轻松,毕竟WebDav走的都是一个端口,设置好权限和端口就能开始访问了。但第一个问题就出现了,win10提示无法访问
既然https不行,那就试试http吧,一通操作之后,连上了!迫不及待的进行测试,打开图片,OK;打开音乐,OK;打开视频,报错……

这是为什么?
进行一个百度的搜索,终于找到了问题所在,原链接指路
原来是windows会限制webdav的最大传输文件大小,修改下注册表,改成4G,重启,再测试一下打开视频,好消息是,能成功看了!坏消息是,加载非常慢……
慢的原因其实很好找,打开任务管理器,可以看到webclient一直在跑带宽,很容易就能猜到这是在把文件缓存入本地磁盘。这就很不合理了,视频本身就不小,还只能全部缓存完毕后才能播放,就不能像web一样看视频么。
解决卡顿
还是万能的百度,找到了一个webdav客户端,RaiDrive
配置上后,播放什么都非常丝滑,可见第三方客户端对大文件传输进行了专门的优化,拖拉进度条也只需要一点加载时间,体验跟web端的播放没什么区别。

就是这个容量显示有点……