如何为查看基于Amazon S3的静态网站的用户提供目录列表?

时间:2011-05-05 12:17:13

标签: file amazon-s3 amazon listings

我有一个Amazon S3帐户,我想在其中存储多个文件目录。

我希望此网站的访问者能够查看和下载我放置的文件和文件夹。

这些文件和文件夹会定期更改,我不希望每次添加或删除文件时都不必重写任何HTML。

如何安排我的网站的观看者提供简单的文件/文件夹列表?

3 个答案:

答案 0 :(得分:9)

您可以使用Javascript列出文件。

以下是亚马逊提供的解决方案:

http://aws.amazon.com/code/Amazon-S3/1713

将list.html放在要列出的每个目录中。

我制作了自己的列表文件,提供了可折叠的树视图:

https://github.com/phatmann/jS3Tree/blob/master/index.html

如果您使用S3网站功能,这些文件都不会起作用。

答案 1 :(得分:7)

我创建了一个简单的JS,它创建了一个符合您要求的HTML样式的目录索引:https://github.com/rgrp/s3-bucket-listing

您可以将其直接安装到s3存储桶或单独的网站中(这要归功于S3 REST API支持CORS!)。自述文件有关于此的完整说明:https://github.com/rgrp/s3-bucket-listing

答案 2 :(得分:0)

您应该使用Amazon S3 API列出其中的存储桶和文件 一个桶可以代表一个文件夹(比在文件名上使用前缀更容易)

创建存储桶并将文件上传到他们后,您可以在页面上显示带有List All My Buckets请求的存储桶。一旦用户点击给定存储桶,您就可以获取文件在其中使用List Bucket请求另外最后一次点击该文件以生成该对象的URL,以便用户可以下载它而不会浪费您的带宽

你可以找到许多亚马逊s3 api here

的实现