1

我有一个应用程序,允许用户使用 CSS 和其他项目自定义网站。创建这些文件后,它们将存储在 Amazon S3 上,可供公众阅读。因此,我一直能够使用不需要我先连接到 S3 来生成 URL 的静态 url 来引用它们。

我们已将所有文件移至位于我们托管公司数据中心内的 EMC Atmos 系统。我知道如何从 Atmos 生成可共享的 URL,但只能通过首先建立连接。Atmos 有没有办法在对象上设置系统元数据,以便可以使用静态 URL 引用它?

4

2 回答 2

1

您无需连接到 Atmos 即可生成可共享的 URL。可共享 URL 的生成总是发生在客户端;它不会通过 HTTP 发生。

Atmos 系统元数据始终是不可变的。您可以使用可共享的 URL 生成“静态 URL”,并将过期设置为遥远的将来。

于 2012-08-16T15:29:35.077 回答
0

EMC Atmos不需要HTTP/HTTPS 连接来生成可共享的 URL。它确实 建立了一个 HTTP 连接来生成文件,但它可以由存储在云上的文件的最终用户来完成。

要创建 URL,需要在应用程序客户端进行签名(不需要 HTTP 连接)。原因是因为生成了唯一的签名。

要发送签名,您可以将签名放在 URL 中:

$url = "http://$server$resource?uid=$uid&expires=$expires&signature=$signature";

或者不是将签名放在 URL 中,而是通过 REST API 通过发布x-emc-signature的 HTTP 标头来发送它。

因此,一旦您生成了该 URL,您可以通过电子邮件或文本将其发送给其他人,他们可以稍后单击它们,只要该 URL 未过期,它将是有效的。

EMC Atmos 验证签名后,会将下载内容发送到客户端。请注意,系统时钟关闭超过 5 分钟的服务器将无法生成可共享 URL,因此请使用 NTP 守护程序在生成可共享 URL 的应用程序上保持时间同步。

因此,澄清一下,EMC Atmos 不需要与您的云存储提供商建立 HTTP 连接。HTTP 连接在第一次请求文件时完成。届时,该文件将公开可用。

于 2012-09-22T06:20:44.683 回答