使用 PUT 方法进行 Web 发布

IBM HTTP Server for i 实例可配置为支持用于 Web 发布的 PUT 方法。

使用 HTTP 向网络服务器上传文件的标准方法是使用 PUT 方法。 HTTP Server 支持 PUT 方法,但需要额外设置,以告诉服务器如何处理传入的 PUT 请求。 实现这一目标的方法之一是启用 WebDAV, , HTTP Server 通过 mod_dav 模块提供了这一功能。 另一种方法是提供自己的 CGI 程序,并将其配置为与 HTTP Server 一起使用。 本主题讨论了两个选项以及一般的 PUT 方法。

关于 PUT 方法

POST 和 PUT 是 HTTP 规范中的两种方法,用于永久更改网络服务器上的文件。 虽然 POST 方法与预先建立的内容 (例如 Web 表单) 结合使用,但 PUT 方法涉及处理服务器上尚不存在的文件。 HTTP Server 以同样的方式支持 POST 和 PUT 方法,也就是说,它需要一个程序来告诉它如何处理传入的请求。

WebDAV

大多数用户会发现,实现 HTTP Server PUT 方法的最简单方法是启用 WebDAV 并使用支持 WebDAV 的客户机程序 (例如 Microsoft Web 文件夹) 来上载文件。 WebDAV 是 协议的一组扩展,通过 mod_dav 模块包含在 中。 HTTP HTTP Server 除了 WebDAV 扩展外,mod_dav 还包含一个 PUT 处理程序。

有关 WebDAV, 的更多信息,包括包含的所有方法的列表,请参阅 WebDAV for HTTP Server为 HTTP Server 设置 WebDAV

CGI 程序

或者,您可以提供自己的 CGI 程序来处理入局 PUT 请求,并将其配置为与 HTTP Server配合使用。 处理 PUT 请求的程序与处理 POST 请求的程序操作非常相似,但必须包含用于在服务器上写入 (和覆盖) 文件的其他代码。

由于 PUT 操作会导致服务器上的永久更改,因此请务必注意提供您自己的 PUT 处理 CGI 程序所涉及的安全问题。 其中一些问题包括:

  • 确保发出 PUT 请求的用户有权更新服务器上的文件
  • 确保仅更新 Web 内容文件
  • 仅更新用户有权更新的内容

有关提供您自己的 PUT 处理 CGI 程序的更详细讨论,请参阅 Apache Week 文章 Publishing Pages with PUT 信息中心外部链接

一旦您有了能够处理 PUT 请求的程序,就可以使用 Script 伪指令将其配置为与 HTTP Server 配合使用。 有关 Script 伪指令的更多信息,请参阅 Module mod_actions