WebDAV

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

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

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

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

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

随着协议的工作开始,很明显,同时处理分布式创作和版本控制将涉及太多的工作,并且任务将不得不分开。WebDAV小组专注于分布式创作,将版本控制留作以后研究。(Delta-V擴充套件後來加入了版本控制功能請參閱下面的擴充與衍生章節。)

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

实现
]]

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

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

服务器支持

  • Apache HTTP Server提供基于和Apache Subversion (svn)的WebDAV模块。
  • 微软的IIS也有WebDAV模块。
  • Nginx有非常有限的可选WebDAV模块和第三方模块
  • 是一个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

擴充與衍生
針對版本控制,Web版本控制與組態管理工作小組下的Delta-V協定增加了資源修訂追蹤功能,並發表於中。

在搜尋和定位方面,WebDAV Search specification接手DAV Searching and Locating(DASL)工作小組的工作,並於2008年11月以發布。

針對行事曆,CalDAV是一種允許透過WebDAV存取行事曆的通訊協定。CalDAV將行事曆事件模擬為iCalendar格式的HTTP資源,並將包含事件的行事曆以WebDAV集合模擬。

對於群組軟體而言,GroupDAV是WebDAV的變體,允許用戶端/伺服器群組軟體系統儲存和取得物件,例如行事曆和通訊錄項目,而非網頁。

針對MS Exchange的互操作性,WebDAV可用於讀取/更新/刪除信箱或公用資料夾中的項目。適用於Exchange的WebDAV已由微軟擴展至可處理訊息資料。Exchange Server 2000、2003和2007版本支援WebDAV。但是Exchange 2010已停止支援WebDAV,改用Exchange Web Services(EWS),這是一種以SOAP/XML為基礎的API。

参见

  • 內容管理
  • WebDAV软件比较
  • 集群文件系统
  • CardDAV
  • 數據可移植性

参考文献
外部链接

评论 (0)

  • 还没有评论,来抢沙发吧。