使用 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。