WebDAV
来源:互联网 发布:ce5..4源码 编辑:程序博客网 时间:2024/05/21 16:59
WebDAV 是对 HTTP/1.1 协议的扩展,添加了新的 HTTP 方法和标头,支持任意类型的 Web 制作,不仅支持 HTML 和 XML,还支持文本、图形、电子表格等格式。
使用 WebDAV 可以完成的工作包括:
1. 特性(元数据)处理。您可以使用 WebDAV 方法 PROPFIND 和 PROPPATCH 创建、删除和查询有关 Web 页面的信息,例如作者和创建日期。
2. 集合和资源管理。您可以使用 WebDAV 方法 GET、PUT、DELETE 和 MKCOL 创建文档集合并检索分层结构成员列表(类似于文件系统中的目录列表)。
3. 锁定。您可以使用 WebDAV 禁止多人同时对一个文档进行操作。可以通过 WebDAV 方法 LOCK 和 UNLOCK 使用互斥锁或共享锁,这将有助于防止出现“丢失更新”(更改被覆盖)的问题。
4. 名称空间操作。您可以使用 WebDAV 方法 COPY 和 MOVE 让服务器复制和删除 Web 资源。
常见WebDAV术语
URI。URI(统一资源标识符)是一种文件标识符,通过使用缩写的 URL 提供了额外的安全保护。一个 URL 映射代替了 URL 的第一部分,从而对用户隐藏了文件的完整物理路径名。
源 URI。术语“源 URI”是指能用来访问资源的源代码的 URI。
集合。 WebDAV 集合是为 WebDAV 操作启用的一个或一组资源。集合包含一组称为成员 URI 的 URI,它们标识了启用了 WebDAV 的成员资源。
成员 URI。集合中一组 URI 中的一个成员。
内 部成员 URI。与集合的 URI 直接相关的一个成员 URI。例如,如果 URL 为 http://xx.xx.com/webdav/doc 的资源启用了 WebDAV,并且如果 URL 为 [url]http://xx.xx.com/webdav/[/url] 的资源也启用了 WebDAV,则 URL 为 [url]http://xx.xx.com/webdav/[/url] 的资源就是一个集合,它包含 [url]http://xx.xx.com/webdav/doc[/url] 并将其作为一个内部成员。
特性。一个包含资源的相关说明性信息的“名称/值”对。使用特性可以有效地查找和管理资源。例如,可以使用特性“creationdate”按资源的创建日期索引所有资源,或者使用特性“author”按作者姓名进行索引。
锁定。锁定资源功能提供了这样一种机制,即可以保证在一个用户编辑资源时,其他用户不能进行修改。锁定可以防止发生覆盖冲突,解决了“丢失更新”的问题。
新 HTTP 方法。WebDAV 引入了若干新 HTTP 方法,用于告知启用了 WebDAV 的服务器如何处理请求。这些方法是对现有方法(例如 GET、PUT 和 DELETE)的补充,可用来执行 WebDAV 事务。下面简要介绍这些新 HTTP 方法:
l Destination:
l Lock-Token:
l Timeout:DAV:
l If:
l Depth:
l Overwrite:
新 HTTP 方法。WebDAV 引入了若干新 HTTP 方法,用于告知启用了 WebDAV 的服务器如何处理请求。这些方法是对现有方法(例如 GET、PUT 和 DELETE)的补充,可用来执行 WebDAV 事务。下面简要介绍这些新 HTTP 方法:
• COPY。用于复制资源。可以使用 Depth: 标头移动资源,使用 Destination: 标头指定目标。如果适用,COPY 方法也使用 Overwrite: 标头。
• MOVE。用于移动资源。可以使用 Depth: 标头移动资源,使用 Destination: 标头指定目标。如果适用,MOVE 方法也使用 Overwrite: 标头。
• MKCOL。用于创建新集合。使用此方法可避免过载 PUT 方法。
• PROPPATCH。用于设置、更改或删除单个资源的特性。
• PROPFIND。用于获取一个或多个资源的一个或多个特性。当客户机向服务器提交对某个集合的 PROPFIND 请求时,该请求可能会包含一个值为 0、1 或 infinity 的 Depth: 标头。
o 0。指定将获取指定 URI 处的集合的特性。
o 1。指定将获取该集合以及位于该指定 URI 之下与其紧邻的资源的特性。
o infinity。指定将获取该集合及其包含的所有成员 URI 的特性。由于深度为无穷大的请求需要遍历整个集合,因而会大大增加服务器的负担。
• LOCK。为资源添加锁。使用 Lock-Token: 标头。
• UNLOCK。删除资源的锁。使用 Lock-Token: 标头。
关于pear/HTTP_WebDAV_Server
PHP和WebDAV两者结合有两种办法,一通过Apache的mod_dav模块实现;还有就是通过pear 的HTTP_WebDAV_Server 提供的这个framework用程序来实现。前者实现起来简单,后者可以结合实际情况,容易扩展,更容易和别的系统对接、整合。
功能
1. 与 RFC2518 的兼容性,与 RFC2518 客户机的互操作性
2. 可扩展和完善的权限访问控制
3. 可以方便的创建基于WebDAV的文件系统
需要在PHP 4.3 以上版本支持
下载地址:[url]http://cvs.php.net/pear/HTTP_WebDAV_Server/[/url]
HTTP_WebDAV_Server的详细说明文件内容,我英文不是很好,仅限能看懂级别,翻译出来怕大家拿臭鸡蛋砸。还是请有心人自己看吧.
[url]http://cvs.php.net/co.php......WebDAV_Server/dav.txt?r=1.3[/url]
WebDAV资源站点:
[1] [url]http://webdav.org[/url]
[2] [url]http://www.azzit.de/phpwebdav[/url]
[3] [url]http://lwest.free.fr/doc/php/lib[/url]
[4] [url]http://bitflux.ch/developer[/url]
[b]原文:[url]http://www.9iec.com/Elma/index.php?job=art&articleid=a_20051025_013440[/url][/b]
使用 WebDAV 可以完成的工作包括:
1. 特性(元数据)处理。您可以使用 WebDAV 方法 PROPFIND 和 PROPPATCH 创建、删除和查询有关 Web 页面的信息,例如作者和创建日期。
2. 集合和资源管理。您可以使用 WebDAV 方法 GET、PUT、DELETE 和 MKCOL 创建文档集合并检索分层结构成员列表(类似于文件系统中的目录列表)。
3. 锁定。您可以使用 WebDAV 禁止多人同时对一个文档进行操作。可以通过 WebDAV 方法 LOCK 和 UNLOCK 使用互斥锁或共享锁,这将有助于防止出现“丢失更新”(更改被覆盖)的问题。
4. 名称空间操作。您可以使用 WebDAV 方法 COPY 和 MOVE 让服务器复制和删除 Web 资源。
常见WebDAV术语
URI。URI(统一资源标识符)是一种文件标识符,通过使用缩写的 URL 提供了额外的安全保护。一个 URL 映射代替了 URL 的第一部分,从而对用户隐藏了文件的完整物理路径名。
源 URI。术语“源 URI”是指能用来访问资源的源代码的 URI。
集合。 WebDAV 集合是为 WebDAV 操作启用的一个或一组资源。集合包含一组称为成员 URI 的 URI,它们标识了启用了 WebDAV 的成员资源。
成员 URI。集合中一组 URI 中的一个成员。
内 部成员 URI。与集合的 URI 直接相关的一个成员 URI。例如,如果 URL 为 http://xx.xx.com/webdav/doc 的资源启用了 WebDAV,并且如果 URL 为 [url]http://xx.xx.com/webdav/[/url] 的资源也启用了 WebDAV,则 URL 为 [url]http://xx.xx.com/webdav/[/url] 的资源就是一个集合,它包含 [url]http://xx.xx.com/webdav/doc[/url] 并将其作为一个内部成员。
特性。一个包含资源的相关说明性信息的“名称/值”对。使用特性可以有效地查找和管理资源。例如,可以使用特性“creationdate”按资源的创建日期索引所有资源,或者使用特性“author”按作者姓名进行索引。
锁定。锁定资源功能提供了这样一种机制,即可以保证在一个用户编辑资源时,其他用户不能进行修改。锁定可以防止发生覆盖冲突,解决了“丢失更新”的问题。
新 HTTP 方法。WebDAV 引入了若干新 HTTP 方法,用于告知启用了 WebDAV 的服务器如何处理请求。这些方法是对现有方法(例如 GET、PUT 和 DELETE)的补充,可用来执行 WebDAV 事务。下面简要介绍这些新 HTTP 方法:
l Destination:
l Lock-Token:
l Timeout:DAV:
l If:
l Depth:
l Overwrite:
新 HTTP 方法。WebDAV 引入了若干新 HTTP 方法,用于告知启用了 WebDAV 的服务器如何处理请求。这些方法是对现有方法(例如 GET、PUT 和 DELETE)的补充,可用来执行 WebDAV 事务。下面简要介绍这些新 HTTP 方法:
• COPY。用于复制资源。可以使用 Depth: 标头移动资源,使用 Destination: 标头指定目标。如果适用,COPY 方法也使用 Overwrite: 标头。
• MOVE。用于移动资源。可以使用 Depth: 标头移动资源,使用 Destination: 标头指定目标。如果适用,MOVE 方法也使用 Overwrite: 标头。
• MKCOL。用于创建新集合。使用此方法可避免过载 PUT 方法。
• PROPPATCH。用于设置、更改或删除单个资源的特性。
• PROPFIND。用于获取一个或多个资源的一个或多个特性。当客户机向服务器提交对某个集合的 PROPFIND 请求时,该请求可能会包含一个值为 0、1 或 infinity 的 Depth: 标头。
o 0。指定将获取指定 URI 处的集合的特性。
o 1。指定将获取该集合以及位于该指定 URI 之下与其紧邻的资源的特性。
o infinity。指定将获取该集合及其包含的所有成员 URI 的特性。由于深度为无穷大的请求需要遍历整个集合,因而会大大增加服务器的负担。
• LOCK。为资源添加锁。使用 Lock-Token: 标头。
• UNLOCK。删除资源的锁。使用 Lock-Token: 标头。
关于pear/HTTP_WebDAV_Server
PHP和WebDAV两者结合有两种办法,一通过Apache的mod_dav模块实现;还有就是通过pear 的HTTP_WebDAV_Server 提供的这个framework用程序来实现。前者实现起来简单,后者可以结合实际情况,容易扩展,更容易和别的系统对接、整合。
功能
1. 与 RFC2518 的兼容性,与 RFC2518 客户机的互操作性
2. 可扩展和完善的权限访问控制
3. 可以方便的创建基于WebDAV的文件系统
需要在PHP 4.3 以上版本支持
下载地址:[url]http://cvs.php.net/pear/HTTP_WebDAV_Server/[/url]
HTTP_WebDAV_Server的详细说明文件内容,我英文不是很好,仅限能看懂级别,翻译出来怕大家拿臭鸡蛋砸。还是请有心人自己看吧.
[url]http://cvs.php.net/co.php......WebDAV_Server/dav.txt?r=1.3[/url]
WebDAV资源站点:
[1] [url]http://webdav.org[/url]
[2] [url]http://www.azzit.de/phpwebdav[/url]
[3] [url]http://lwest.free.fr/doc/php/lib[/url]
[4] [url]http://bitflux.ch/developer[/url]
[b]原文:[url]http://www.9iec.com/Elma/index.php?job=art&articleid=a_20051025_013440[/url][/b]
- WebDAV
- Webdav
- WebDAV
- WebDAV
- webdav
- 关于 WebDAV
- WebDAV介绍
- webdav使用指南
- webdav使用指南
- WebDAV Projects
- webDAV介绍
- WebDAV简介
- Webdav 命令
- apache webdav
- WebDAV相关
- WebDAV客户端开发实例
- 谈Tomcat与WebDAV
- Web Storage System + WebDAV
- 软件工程中的五种耦合
- JAVA基础:Servlet技术及其与CGI的比较
- T-SQL-SQL server自定义数据类型 (转载)
- 正则表达式学习-进
- T-SQL-SQL server数据类型 (转载)
- WebDAV
- SQL-数据的插入、更新和删除 (转载)
- SQL-如何提高select语句的效率 (转载)
- 初学者入门:如何随心所欲操纵java数组
- T-SQL-嵌套查询 (转载)
- C语言中遇到的两个问题!
- SQL-联接查询 (转载)
- 对二维数组排序
- 被误解的C++——汉尼拔