Sun Java System Web Server 7.0 管理员指南

常见 WebDAV 术语

本节概述了使用 WebDAV 时经常遇到的术语。

URI。URI(统一资源标识符)是一种文件标识符,通过使用缩写的 URL 提供了额外的安全保护。URL 映射代替了 URL 的第一部分,从而对用户隐藏了文件的完整物理路径名。

源 URI。术语“源 URI”是指能用来访问资源的源代码的 URI。为了更好地理解源 URI 的概念,请考虑以下示例:

一个名为 foo.jsp 的 JSP 页面位于 URI /docs/date.jsp 处。该页面包含 HTML 标记和 Java 代码,当执行该代码时,将在客户机的浏览器中列显当前的日期。当服务器收到客户机要获取 foo.jsp 的 GET 请求后,先执行该 Java 代码,然后提供该页面。客户机收到的并不是该 foo.jsp 页面(因为它驻留在服务器上),而是一个显示当前日期的动态生成的页面。

如果您要创建一个源 URI(例如 /publish/docs)并将其映射到包含 foo.jsp/docs 目录,则对 /publish/docs/foo.jsp 的请求将是请求 /docs/foo.jsp 页面的源代码。在这种情况下,服务器将提供页面而不执行 Java 代码。客户机将收到未经处理的页面,与保存在磁盘中的页面完全一样。

这样,对源 URI 的请求也就成了请求资源的源代码。

集合。 WebDAV 集合是为 WebDAV 操作启用的一个或一组资源。集合包含一组称为成员 URI 的 URI,它们用来标识启用了 WebDAV 的成员资源。

成员 URI。集合中一组 URI 中的一个成员。

内部成员 URI。与集合 URI 直接相关的一个成员 URI。例如,如果 URL 为 http://info.sun.com/resources/info 的资源启用了 WebDAV,并且 URL 为 http://info.sun.com/resources/ 的资源也启用了 WebDAV,则 URL 为http://info.sun.com/resources/ 的资源就是一个集合,它包含 http://info.sun.com/resources/info 并将其作为一个内部成员。

属性。一个包含有关资源的描述性信息的名称/值对。使用属性可以有效地搜索和管理资源。例如,使用属性 "creationdate" 可以按资源的创建日期为所有资源建立索引,使用属性 "author" 可以按作者姓名创建索引。

动态属性。由服务器强制实现的属性。例如,动态属性 getcontentlength 有一个值,即 GET 请求返回的实体的长度,它是由服务器自动计算的。动态属性包括以下两类:

静态属性。不是由服务器强制实现的属性。服务器仅记录静态属性的值;客户机负责维护其一致性。

Sun Java System Web Server 支持以下动态属性:


注 –

Sun Java System Web Server 支持动态属性 executable,它允许客户机更改与资源相关联的文件访问权限。

以下是对 executable 动态属性的 PROPPATCH 请求示例:

PROPPATCH /test/index.html HTTP/1.1

Host: sun

Content-type: text/xml

Content-length: XXXX

<?xml version="1.0"?>

<A:propertyupdate xmlns:A="DAV:" xmlns:B="http://apache.org/dav/props/">

<A:set>

<A:prop>

<B:executable>T</B:executable>

</A:prop>

</A:set>

</A:propertyupdate>


锁定。锁定资源功能提供了这样一种机制,即可以保证在一个用户编辑资源时,其他用户不能对该资源进行修改。锁定可以防止发生覆盖冲突,解决了“丢失更新”的问题。

Sun Java System Web Server 支持两种锁定类型:共享和互斥。

新的 HTTP 标头。WebDAV 扩展了 HTTP/1.1 协议。它定义了新的 HTTP 标头,客户机可以通过这些新标头传递 WebDAV 资源请求。这些标头为:

新的 HTTP 方法。WebDAV 引入了若干新的 HTTP 方法,用于指示启用了 WebDAV 的服务器如何处理请求。这些方法是对现有 HTTP 方法(例如 GETPUT DELETE)的补充,可用来执行 WebDAV 事务。下面简要介绍这些新的 HTTP 方法: