WebDAV(Web-based Distributed Authoring and Versioning)一种基于 HTTP 1.1协议的通信协议。它扩展了HTTP 1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法,使应用程序可对Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。FreeNAS从9.3版本开始提供WebDAV服务支持。通过WebDAV共享,使得我们可以直接在浏览器中,通过身份验证之后访问特定的卷或数据集中存储的数据。

任务1 创建用户和WebDAV共享数据集

添加1块硬盘,用作创建数据集

在存储这里创建存储池

点击左侧共享,WebDAV共享

任务2 配置WebDAV服务
点击左侧 服务 找到 WebDAV,点击开启和打开开机启动


单击配置,即可设置WebDAV密码,这里不做设置

默认用户名为 webdav 密码为 davtest

任务3 使用网页浏览器访问WebDAV共享
浏览器打开访问 ,请注意,需要注意大小写
http://192.168.100.10:8080/WebDAVshare/


任务4 新建Word文档存入WebDAV


如果无法保存,可以用文件管理器打开,再将word文档复制进去

网页中单击文件即可下载

任务5 自建ssl证书实现WebDAV加密访问
首先打开
https://freessl.cn/
免费申请证书,按照网站教程进行申请

然后准备证书的 证书和证书链 还有 私钥


随后进入 System > General 设置页,修改一些通用选项并启用 https:

Protocol: HTTP+HTTPS
Certificate: freenas-cert
WebGUI IPv4 Address: 192.168.100.10
WebGUI HTTP Port: 8080
防止浏览器默认访问80端口,将8080留做备用端口。
WebGUI HTTPS Port: 443
WebGUI HTTP -> HTTPS Redirect: 取消勾选
关闭自动重定向到HTTPS。

浏览器访问

任务6 浅析WebDAV如此重要,为何国内网盘不提供?
主要原因为若国内网盘都支持WebDAV,部分用户就可以不用特地去载网盘的客户端,即可在其他的App中使用到云盘的服务。比如扫描后将资料上传至网盘,批注后将文档上传至网盘。对于网盘服务商来说,相应的,App关注度、客户端下载量、用户活跃度、广告展现和推送等都会减少,公司的运营势必会受到一定影响。这个分析确实有理,并且这与国内缺乏“生态”的行业现状有直接关联。很多云盘产品团队会认为,支持webDAV会影响自身的活跃用户数,粘性,用户数据,无法精准的对接到用户需求,这对于需要融资的厂商来说更会影响资本市场的融资情况(用户数据被“削弱”)

  1. WebDAV对开发的要求并不低WebDAV协议是标准协议,很多产品都在用,年限也较长了,包括微软的Office和自家Sharepoint服务器通信,苹果的iWork套件也是基于WebDAV。年限长了,功能繁多的协议里面细节部分也多,需要开发考虑的点就增多。比如权限如何管理,如何支持文件锁定等都是难点,需要认真的去一遍又一遍的读协议,还得把自己希望实现的点和协议里的要求漂亮的吻合起来。因此,如何完美的支持WebDAV是个苦活,不是每间公司都愿意去做的。2. 自主控制权不管是哪个领域的生态圈,我们都知道某些“潜规则”都需要以业内老大说的算,或者老大来创立“明规则”。如果是我自己做的“接口“(API),那所有接入这个接口的合作方,都在某种程度上需要“听我的”,我是这个API的主导。阿里和顺丰的事件就是阿里希望在数据接口上有主导权。所以大厂愿意做自己的API而不是支持WebDAV,是希望其保持主导权,避免和同行或者相关行业的合作伙伴有利益的冲突,可以自主控制。而WebDAV是一个标准协议,是统一的,这么一来控制权自然就不再大厂手上了,重要数据也可能需要“共享”。而且,区别于自己的API协议,由于无法分辨调用WebDAV协议的到底是哪个应用,很多大厂也不愿意选择支持WebDAV。3. 公司运营出于对自家团队的KPI影响的考虑。比如,如果团队的API是活跃用户数,那么如果支持WebDAV势必会对此有一些影响。坚果云的情况是,确实有些用户就习惯用Readdle家的Documents来访问坚果云的文件。如此一来团队的KPI是比较难定夺的。此外,重新造轮子是工程师的天性,开发自己独有的API,这样有业绩也有成就感,唯一的问题加重了生态圈App的负担

利用FreeNas创建WebDAV共享并实现ssl加密相关推荐

  1. 利用FreeNas创建AFP共享

    macOS是苹果公司为Mac系列产品开发的专属操作系统,是苹果Mac系列产品的预装系统,是全世界第一个基于FreeBSD系统采用"面向对象操作系统"的全面的操作系统.AFP(App ...

  2. 利用FreeNas创建iSCSI块级存储

    目前,大多数分析都认为SAN是未来企业级的存储方案,因为SAN便于集成,能改善数据可用性及网络性能,而且还可以减轻管理作业.而FreeNAS提供的iSCSI块级存储,正是SAN技术中,相比FC(光纤信 ...

  3. Linux挂载freenas的Nfs,在FreeNAS上配置FreeNAS以设置ZFS存储磁盘和创建NFS共享 - 第2部分...

    在我们以前的文章中,我们已经展示了如何安装FreeNAS的服务器. 在这篇文章中,我们将介绍FreeNAS的配置和使用ZFS的设置存储. 将ZFS磁盘添加到FreeNAS 要求 安装和配置FreeNA ...

  4. Linux Namespace系列(09):利用Namespace创建一个简单可用的容器

    本文将演示如何利用namespace创建一个完整的容器,并在里面运行busybox.如果对namespace不是很熟悉,请先参考前面几遍介绍不同类型namespace的文章. busybox是一个Li ...

  5. 【Excle数据透视表】如何创建非共享缓存的数据透视表

    一般情况下,利用同一个数据源创建多个数据表时,默认创建的是共享缓存的数据透视表.刷新一个数据透视表时会影响其他数据透视表的展示结果. 解决方案 创建非共享缓存的多个数据透视表 步骤一 单击工作表数据任 ...

  6. 主线程是如何向子线程传递数据的?_c++ 利用thread创建线程

    用进行多线程开发 小时候,老师总是教育我们上课要专心,"一心不可二用".可是CPU这个不听话的"熊孩子"偏偏却在一个芯片中加入了两个甚至多个运算核心,想要一&q ...

  7. bcdedit添加linux引导,Linux_利用Bcdedit创建Linux系统引导,Bcdedit在Windows Vista中的一个命 - phpStudy...

    利用Bcdedit创建Linux系统引导 Bcdedit在Windows Vista中的一个命令行工具,用于建立和重新配置bootloader,无须再使用boot.ini文件.下面我们来谈谈如何用bc ...

  8. java添加窗体中_java中利用JFrame创建窗体 【转】

    Java代码 publicclassTest(){ publicstaticvoidmain(String[] args){ JFrame frame = newJFrame(); JPanel pa ...

  9. 攻防红队日记:利用路由器创建PPTP搭建隧道进内网

    弱口令yyds,这是这次攻防演练第二个惊喜,在扫目标的C段IP的时候发现五个网络设备,有三个路由器.一个web管理系统和一台虚拟专用网络设备,看起来版本都比较旧就想着先去找找版本漏洞,试了试都没登陆进 ...

最新文章

  1. 4702: 分糖果系列一
  2. shell 排序函数
  3. linux——rpm的详细说明
  4. VirtualBox虚拟机中Ubuntu11.10安装Additions出现 读写错误的解决办法
  5. Java-Map从入门到性能分析1【Map初识、Map通用方法、HashMap的使用(遍历方法、性能分析)】
  6. 7收不到邮件 contact form_如何解决Contact Form 7提示的配置错误
  7. android+note2+分辨率,5.5英寸720p屏全新RGB像素排列_三星 GALAXY Note II_手机Android频道-中关村在线...
  8. maven 整体打包_Spirng boot maven多模块打包不踩坑(示例代码)
  9. Vaughn Vernon谈云原生和反应式现状
  10. ios开发之--UITextField光标右移
  11. linux 自动执行脚本
  12. php函数-list函数
  13. android root刷机包包,安卓ROOT卡刷包通用版【安致提供】
  14. 动手学TCP——CS144实验感想
  15. C语言超市商品管理系统代码(精)
  16. 超全面UI基础设计规范
  17. ROS小车基于yocs_smoother_velocity做速度平滑处理
  18. python接入excel_在abaqus中使用python连接excel
  19. 学习淘淘商城第三十四课(在业务逻辑中添加缓存)
  20. HMS华为账号登入全部流程加详解流程机制

热门文章

  1. Eclipse下新建Maven项目、自动打依赖jar包
  2. Windows打印体系结构之打印驱动框架
  3. websocket 例子
  4. html5开发之viewport使用
  5. ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
  6. Linux安装Android开发环境
  7. wxruby框架例子1
  8. Linux 下 PHP 5.2.x 连接 SQL Server 数据库 FreeTDS 配置笔记
  9. 安装GCC-8.3.0及其依赖
  10. master中的系统目录与用户数据库中的区别