WebDAV

基于Web的分布式编写和版本控制（，缩写：WebDAV）是超文本传输协议（HTTP）的扩展，有利于用户间协同编辑和管理存储在万维网服务器文档。WebDAV由互联网工程任务组的工作组在中定义。

WebDAV协议为用户在服务器上创建、更改和移动文档提供了一个框架。WebDAV协议最重要的功能包括作者或修改日期等属性的维护、命名空间管理、集合和覆盖保护。为属性维护所提供的功能包括创建、删除和查询文件信息等；命名空间管理处理在服务器名称空间内复制和移动网页的能力；集合（）处理各种资源的创建、删除和列举；覆盖保护处理与锁定文件相关的问题。WebDAV协议利用TLS、HTTP摘要认证、XML等技术来满足这些需求。

许多现代操作系统为WebDAV提供了内置的客户端支持。

历史 
WebDAV创始于1996年，当时加州大學爾灣分校博士毕业生Jim Whitehead与W3C共同主办了两场会议，与感兴趣的人讨论万维网上的分布式创作问题。
蒂姆·伯纳斯-李对网络的最初看法是涉及阅读和写作的媒介。事实上，Berners Lee的第一个Web浏览器（WorldWideWeb），可以查看和编辑網頁；但是，随着网络的成长，对大多数用户来说成为了只读媒介。怀特黑德和其他志同道合的人想超越这个限制。

W3C会议决定成立一个IETF工作组，因为新的工作将导致对HTTP进行扩展，而当时IETF已经开始对HTTP进行标准化。

随着协议的工作开始，很明显，同时处理分布式创作和版本控制将涉及太多的工作，并且任务将不得不分开。WebDAV小组专注于分布式创作，将版本控制留作以后研究。(The Delta-V extension added versioning later see the Extensions section below.)

在（IESG）接受的增量更新之后，WebDAV工作组在2007年3月结束了其工作。当时还没有完成的其他扩展，比如，已经由其独立作者独立于正式工作组完成。

实现 
WebDAV扩展了request方法所允许的标准HTTP谓词和HTTP头。增加的谓词包括：

 COPY
 将资源从一个URI复制到另一个URI
 LOCK
 锁定一个资源。WebDAV支持共享锁和互斥锁。
 MKCOL
 创建集合（即目录）
 MOVE
 将资源从一个URI移动到另一个URI
 PROPFIND
 从中检索以XML格式存储的属性。它也被重载，以允许一个检索远程系统的集合结构（也叫目录层次结构）。
 PROPPATCH
 在单个中更改和删除资源的多个属性
 UNLOCK
 解除资源的锁定

服务器支持 
 Apache HTTP Server提供基于davfs和Apache Subversion (svn)的WebDAV模块。
 微软的IIS也有WebDAV模块。
 Nginx有非常有限的可选WebDAV模块和第三方模块
 SabreDAV是一个PHP应用程序，可以在Apache或Nginx上使用，代替它们的捆绑模块
 Nextcloud是一个云存储PHP应用程序，它提供了完整的WebDAV支持
 lighttpd有一个可选的WebDAV模块

客户端支持 
 Git支持写入HTTP远端，尽管需要特殊服务器支持的HTTP的“智能”Git协议已经成为WebDAV的首选协议
 Linux通过GVfs（包括GNOME文件）或通过KIO（包括Konqueror和Dolphin）支持WebDAV
 macOS对CalDAV和CardDAV有原生支持，其设计基于WebDAV
 Microsoft Windows，其Explorer有原生支持
 Microsoft Office
 WebDAV软件比较

参见 
 內容管理
 集群文件系统

参考文献

外部链接 
 WebDAV Resources
 Davfs2 project 
 Fusedav project
 WebDAV Apache modules 
 WebDAV Drive Mapping Tool

网际协议
W3C标准
HTTP
协作软件
网络文件系统