Webdav

发布时间 2023-11-27 17:43:13作者: Dabenxiong

WebDAV (Web-based Distributed Authoring and Versioning) 是一种基于HTTP1.1协议的通信协议。它扩展了HTTP 1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法,使应用程序可对Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。

目前大部分操作系统、平台、软件应用都支持Webdav,这大大增强了Web应用的价值,以及效能。对于需要大量发布内容的用户而言,应用WebDav可以降低对CMS系统的依赖,而且能够更自由的进行创作。上传、下载变得轻松自如。并且,在使用WebDav后能在网络上实现文件资源的复杂管理和应用。

使用WEBDAV,可以搭建出一个企业内部的文件服务器或者说是企业自主的网盘。

在Windows平台下搭建WEBDAV实际上非常简单,下面就来介绍一下大致过程。

在开始以前,假定已经安装和配置好了IIS。如果需要详细的步骤,那么请移步文章末尾。

1、打开IIS—网站—默认网站,在默认网站上单击右键,选择“添加虚拟目录”。WebDav的实现主要就是靠Web服务器的虚拟目录这个功能。

img

2、添加虚拟目录。把需要拿来做文件服务的目录添加进来。

img

3、添加WebDAV创作规则。这里创作规则做最大限度的开放,不设置任何障碍。毕竟这里的权限设定如同鸡肋,不做限制还好,做了容易出错,因此在这里做限制没多大意义,实际过程中复杂的权限还是需要从分发的文件夹权限里面来做。

文件夹权限设置属于另外一个方面了,并且配置起来非常复杂,稍不注意就容易出错。要么访问不了、要么无法操作。但本篇只介绍WebDAV,在这里文件夹权限的配置问题,就先不展开了。

img

img

4、身份验证设置

这里有一个非常非常大的坑,纵观全网,所有介绍WebDAV搭建的,都说要启用“Windows身份验证”。但我发觉,在启用了Windows身份验证后,映射网络驱动器时候就会不停的要求输账号密码,输入达到一定次数后直接拒绝登录。后来实在没办法,在启用了基本身份验证之后就完全没问题了。

img

5、客户端的应用

在应用之前需要修改注册表,否则是无法映射WebDAV网络驱动器的。原因是如果WebDAV不是https的,win10默认是添加不上的,需要修改注册表使得WIN10同时支持http和https,默认只支持https.

修改注册表:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters

把BasicAuthLevel 值改成2,即同时支持http和https,默认只支持https,然后重启服务电脑。

最后再次通过点“计算机”-》右键-》“映射网络驱动器”,就可以添加成功了。接着输入账号密码,即可访问WebDAV目录了。

img

img

输入账号密码开始连接

img

映射成功直接可以访问资源。

img

打开后,因为有权限设置,在我的账号权限内可以看到的只有这些文件夹:

img

对于客户端的配置,如果想省事,那么可以直接用脚本来自动化操作,包括注册表修改、网络驱动器映射这一系列的操作。

在服务端,我启用了windows server backup服务,每天对该共享文件夹进行了差量备份,并且定期在做一个全量备份 。这样一来,文档就比较安全了,可以按天恢复过去。

img

 

最后总结一下。对于webdav这种技术,如果用得好,那么可以完全用来替代那些无良的网盘。并且在某种层面上来说,WebDAV甚至要比那些限速、限流量、限空间、备份天数有限等等网盘都要好。如果有具有强悍的服务器和存储资源,再加上做好服务器端的自动备份管理,那么拿来做企业应用也未尝不可。