WebDAV 和 IIS 7 的新增功能是什么?

作者:Robert McMurray

介绍

什么是 WebDAV?

WebDAV 是 Web 分布式创作和版本管理的缩写,它是 HTTP 协议的开放标准扩展,可以通过 Internet 进行文件管理。 除了常见的类似文件系统的操作(复制、移动、删除等)外,WebDAV 还添加了灵活的属性机制(基于名称/值对)和资源锁定。 WebDAV 是 Microsoft Web 发布故事中的关键组件,由 WebDAV 重定向程序、Web 文件夹、SMS/SCCM 和许多其他组件使用。

Microsoft 的一些新 Web 创作工具,如 Expression Web Designer,内置了对使用已启用 WebDAV 的网站的支持。 通过在 Windows Vista 和 Windows Server® 2008 中添加一流的 WebDAV 重定向程序,可以将驱动器号映射到配置为使用 WebDAV 模块的网站,因此,可以使用没有内置 WebDAV 支持的 Web 创作工具(如 FrontPage 2003 和 Visual Studio)打开该网站。

Screenshot of Map Network Drive dialog box.

IIS WebDAV 模组的新增功能是什么?

Microsoft 发布了 IIS 的全新 WebDAV 实现,其从头开始编写,以与 WebDAV 协议更兼容,比 IIS 6.0 的 WebDAV 模块更可配置,并且比 Microsoft 先前版本的 WebDAV 更快。 此新的 WebDAV 扩展模块支持广泛的功能和改进,以下列表包含此版本中的几个改进。

注意

此新的 WebDAV 扩展模块仅适用于 Windows Server 2008 和 Internet Information Services 7.0 或更高版本;它将无法在 Windows Server 2003 和 Internet Information Services 6.0 上运行。

与 IIS 的集成

  • 集成管道:IIS 6.0 WebDAV 实现是通过 ISAPI 实现的,但核心服务器需要了解 WebDAV ISAPI 才能正常工作。 新的 IIS 本机模块界面非常丰富,因此不需要考虑这些因素。
  • 管理:IIS 具有全新管理界面和配置存储,新 WebDAV 扩展模块与此新设计紧密集成。 旧的 IIS 6.0 元数据库已不存在,基于 .NET XML *.config 格式的新配置存储已取代它。 此外,IIS 有了全新管理工具,新 WebDAV 扩展模块无缝地插入该范例中。

Screenshot of I I S Manager with the Default Web Site Home tab displayed. The Web D A V Authoring Rules icon is highlighted and circled.

WebDAV 配置

  • WebDAV 特定配置:旧的 WebDAV“重载”了许多 IIS 配置设置。 例如,标准 IIS“目录浏览”设置还通过 WebDAV PROPFIND 谓词控制目录访问。 对于一些希望在不启用目录浏览的情况下启用 PROPFIND 访问的网站管理员来说,这是问题。 新 WebDAV 实现利用 IIS 可扩展配置架构和可扩展管理工具来分离这些设置,并对 WebDAV 行为提供更精细的控制。
  • 每网站 WebDAV 设置:IIS 7.0 及更高版本中的 WebDAV 可以在网站级别启用,而 IIS 6.0 则通过 Web 服务扩展在服务器级别启用 WebDAV。
  • 每 URL 安全设置:新的 WebDAV 扩展模块支持按 URL 创作规则,允许管理员根据每个 URL 指定自定义 WebDAV 安全设置。 这些创作规则与 IIS 每 URL 授权规则是分开的,因此允许一组用于正常 HTTP 请求的安全设置和一组用于 WebDAV 创作的单独安全设置。
  • 支持共享和排他锁:新的 WebDAV 扩展同时支持共享和排他锁,以防止由于覆盖而丢失更新。

Screenshot of Web D A V Settings screen.

WebDAV 入门

WebDAV 演练

为了帮助开始在 IIS 上使用 WebDAV,Microsoft 编写了以下演练:

社区支持

Microsoft 通过 Microsoft https://support.microsoft.com/ 网站上介绍的常规渠道为 WebDAV 提供客户辅助的技术支持。

此外,Microsoft 还通过以下公用论坛为 WebDAV 提供社区支持:

适用于 IIS 7.0 及更高版本的 WebDAV 中的更改和已知问题

注意

其他安装说明可在 Microsoft https://www.iis.net/ 网站上的“在 IIS 7.0 上安装和配置 WebDAV”文档中找到。

此版本已知以下更改或问题:

  • 可以在安装新的 WebDAV 扩展模块后卸载 IIS,这将导致 WebDAV 的扩展停止工作。 此外,如果在此之后重新安装 IIS,WebDAV 模块仍将失败,因为 IIS applicationHost.config 文件中缺少某些 WebDAV 配置设置。 最好的解决方案是在卸载 IIS 后卸载 WebDAV。
  • 虽然许多基于 Web 的功能可以委托给远程管理器,并使用新的 IIS 配置基础结构添加到 web.config 文件中,但 WebDAV 扩展模块功能不能委托或存储在 web.config 文件中。
  • 文件列表允许使用匿名 PROPFIND,但文件上传和基于 WebDAV 的 GET 请求需要经过身份验证的用户。 这是对 IIS 6.0 的更改,其中,可以通过打开安全性来启用匿名 WebDAV 文件上传/下载。 在适用于 IIS 7.0 及更高版本的 WebDAV 中,我们更改了此行为,以便所有 WebDAV 活动都需要身份验证,但为了与某些 WebDAV 客户端向后兼容,我们允许使用匿名 PROPFIND。 (更具体地说,基于 PUT、MKCOL、PROPPATCH、COPY、MOVE、DELETE 和 WebDAV 的 GET 请求都需要身份验证。)
  • 新的 WebDAV 模块支持简单的属性存储,其使用单独的文件,允许在服务器之间轻松复制属性。 (在 IIS 6.0 中,属性存储在 NTFS 备用数据流中,因此很难在不同的文件系统之间复制属性。)