什麼是WebDAV

 WebDAV(Web-based Distributed Authoring and Versioning)

  一種基於 HTTP 1.1協議的通信協議.它擴展了HTTP 1.1,在GET、POST、HEAD等幾個HTTP標準方法以外添加了一些新的方法,使應用程序可直接對Web Server直接讀寫,並支持寫文件鎖定(Locking)及解鎖(Unlock),還可以支持文件的版本控制。

  Microsoft windows2000/XP及IE, Office還有Adobe/MacroMedia的DW等都支持Webdav,這又大大增強了Web應用的價值,以及效能。對於需要大量發佈內容的用戶而言,應用WebDav可以降低對CMS系統的依賴,而且能夠更自由的進行創作。上傳、下載變得輕鬆自如。

  Web 分佈式創作和版本管理 (WebDAV) 擴展了 HTTP/1.1 協議,允許客戶端發佈、鎖定和管理 Web 上的資源。與 IIS 集成後,WebDAV 允許客戶端進行下列操作:

  ·處理服務器上 WebDAV 發佈目錄中的資源。例如,使用此功能,具有正確權限的用戶可以在 WebDAV

  目 錄中複製和移動文件。

  ·修改與某些資源相關聯的屬性。例如,用戶可寫入並檢索文件的屬性信息。

  ·鎖定並解鎖資源以便多個用戶可同時讀取一個文件。但每次只能有一個人修改文件。

  ·搜索 WebDAV 目錄中的文件的內容和屬性。

  在服務器上設置 WebDAV 發佈目錄與通過 Internet 信息服務管理單元設置虛擬目錄一樣簡單。設置好發佈目錄後,具有適當權限的用戶就可以向服務器發佈文檔,並處理目錄中的文件。在設置 WebDAV 目錄之前,必須首先安裝 Windows XP Professional。

  WebDAV 客戶端

  可以通過下面列表中描述的任意一種 Microsoft 產品或通過其他任意的支持行業標準 WebDAV 協議的客戶端來訪問 WebDAV 發佈目錄。

  ·Windows XP 通過“添加網上鄰居嚮導”與 WebDAV 服務器連接,並顯示 WebDAV 目錄中的內容,如同

  它是本地計算機上同一文件系統的組成部分。連接完成之後,就可以拖放文件、檢索和修改文件屬性以

  及執行許多其他文件系統任務。

  ·Internet Explorer 5.0 與 WebDAV 目錄連接,使您可以執行通過 Windows XP 所能執行的文件系統任

  務。

  ·Office 2000 通過其中包含的任意應用程序創建、發佈、編輯並直接將文檔保存到 WebDAV 目錄中。

  在 WebDAV 中搜索

  一旦與 WebDAV 目錄建立連接,就可以快速搜索此目錄中文件的內容和屬性。例如,可以搜索包含

  table 一詞的所有文件或所有由 Fred 編寫的文件。

  集成安全性

  由於 WebDAV 已與 Windows XP 和 IIS 集成,因此它具有這兩者所提供的安全特性。其中包括 Internet 信息服務管理單元中指定的 IIS 權限和 NTFS 文件系統中的自由選擇訪問控制列表 (DACL)。有關 IIS 安全性的信息,請參閱安全性

  http://www.netbei.com/online/iisHelp/iis/htm/core/iisecsa.htm

  由於具有適當權限的客戶端可以對 WebDAV 目錄進行寫入操作,因此對允許哪些客戶端訪問目錄進行控制向來都很重要。爲了幫助您控制訪問權限,IIS 已內置了對 Kerberos 5 身份驗證協議的支持,從而增強了集成 Windows 身份驗證的功能。選擇集成 Windows 身份驗證,可以確保只有具有權限的客戶端纔可訪問 Intranet 上的 WebDAV 目錄,並對它進行寫入操作。有關 Kerberos 5 身份驗證協議如何與 IIS 集成 Windows 身份驗證協作的詳細信息,請參閱集成 Windows 身份驗證。有關 Kerberos 協議工作原理的總體信息,請參閱 Windows XP 文檔中的“Kerberos v5 身份驗證”。

  另外,IIS 還支持摘要式身份驗證和高級摘要式身份驗證。摘要式身份驗證和高級摘要式身份驗證是針對 Windows 域服務器創建的,爲密碼和通過 Internet 傳輸信息提供了更嚴格的安全性措施。有關摘要式身份驗證的信息,請參閱摘要式身份驗證和配置摘要式身份驗證。有關高級摘要式身份驗證的信息,請參閱高級摘要式身份驗證和配置高級摘要式身份驗證。

  WebDAV的優勢

  由於 Web 已經成爲 Internet 的基礎,因此 HTTP 1.1(超文本傳送協議)被證實是用來傳輸數據的非常靈活的通用協議。 但是,HTTP 存在一些明顯的缺點,從而限制了它作爲綜合的 Internet 通訊協議而被採用: 它非常適合用於查看的靜態文檔,但不能提供以足夠複雜(以便向客戶端提供豐富的創作功能)的方式來處理文檔的方法。

  例如,當兩個作者在未進行交流的情況下同時對一個文檔進行更改時,就會出現“更新丟失”問題。 只有由最後一個作者完成、並將修改後的文檔重新上載到服務器的修改纔會保留下來,另一個作者進行的更改將丟失。

  IETF WebDAV 工作組的目標是,設計一個協議,它提供基於標準的論壇中任何分佈式創作工具需要的功能。 當前的 WebDAV 規範 (IETF RFC 2518) 解決協作式創作工具的三個主要問題:

  • 改寫保護。HTTP 1.1 無法確保客戶端可以保護資源,並且可以在其他客戶端同時編輯它們的情況下進行更改。 使用 WebDAV,可以通過多種方式來鎖定資源,以便讓其他客戶端知道您對所討論的資源感興趣,或者防止其他客戶端訪問該資源。

  • 資源管理。HTTP 只能直接訪問單個資源。 WebDAV 提供一種更有效地組織數據的方法。 WebDAV 引入了可包含資源 的集合(類似於文件系統文件夾)概念。 通過 WebDAV 進行的資源管理包括如下功能:創建、移動、複製和刪除集合,以及集合中的資源或文件。

  • 文檔屬性。不同類型的數據具有唯一的屬性,這有助於描述數據。 例如,在電子郵件中,這些屬性可能是發件人的姓名和接收郵件的時間。 在協作文檔中,這些屬性可能是文檔原始作者的姓名和最後一個編輯者的姓名。 因爲人們使用的文檔類型各不相同,所以可能的屬性類型列表也變得無限大。 XML 是 WebDAV 所需的一種可擴展通訊工具。

  WebDAV 請求的格式

  HTTP 1.1(請參閱 IETF RFC 2068)提供一組可供客戶端與服務器通訊的方法,並指定響應(從服務器返回發出請求的客戶端)的格式。 WebDAV 完全採用此規範中的所有方法,擴展其中的一些方法,並引入了其他可提供所描述功能的方法。 WebDAV 中使用的方法包括:

  • Options、Head 和 Trace。 主要由應用程序用來發現和跟蹤服務器支持和網絡行爲。

  • Get。 檢索文檔。

  • Put 和 Post。 將文檔提交到服務器。

  • Delete。 銷燬資源或集合。

  • Mkcol。 創建集合。

  • PropFind 和 PropPatch。 針對資源和集合檢索和設置屬性。

  • Copy 和 Move。 管理命名空間上下文中的集合和資源。

  • Lock 和 Unlock。 改寫保護。

  WebDAV 請求的一般結構遵循 HTTP 的格式並且由以下三個組件構成:

  • 方法。 聲明由客戶端執行的方法(上面描述的方法)。

  • 標頭。 描述有關如何完成此任務的指令。

  • 主體(可選)。 定義用在該指令或其他指令中的數據,用以描述如何完成此方法。

  在主體組件中,XML 成爲整個 WebDAV 結構中的關鍵元素。

---------------------------------------------------------------------------------------------------------------

轉載自simonezhlx的專欄(http://blog.csdn.net/simonezhlx/article/details/4221121)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章